Below you will find pages that utilize the taxonomy term “Jaeger”
Posts
Jaeger - Tracing with gRPC service
要使用 Jaeger 追蹤 gRPC service 程式,可先加入 Jaeger 與 OpenTracing.Contrib.Grpc 套件。
... <PackageReference Include="Jaeger" Version="0.3.6" /> <PackageReference Include="OpenTracing.Contrib.Grpc" Version="0.2.0" /> </ItemGroup> ... 修改 Startup.ConfigureServices,加入 Jaeger tracer、註冊 GlobalTracer、設定 gRPC 攔截器。
... services.AddGrpc(options => { var serviceName = AppDomain.CurrentDomain.FriendlyName; var tracer = new Tracer.Builder(serviceName) .WithSampler(new ConstSampler(true)) .Build(); GlobalTracer.Register(tracer); services.AddSingleton<ITracer>(tracer); var interceptors = options.Interceptors; interceptors.Add<ServerTracingInterceptor>(tracer); ... }); ... 實際運行程式。
選取 Service 與 Operator 下去查詢。
可看到找到的 Trace,上半部可看到時間與耗時的分佈,下半部就是簡易的列表,可看出 Trace 名稱、識別碼、是什麼時間點觸發的、耗時多久、有多少 Span。
點選感興趣的 Trace,會進入 Trace 細部資訊頁面,會將 Trace 及其組成的 Span 以圖形的方式呈現,便於找到相對耗時的操作。
read morePosts
Jaeger - Tracing with ASP.NET Core
要使用 Jaeger 追蹤 ASP.NET Core 的程式,可先加入 Jaeger 與 OpenTracing.Contrib.NetCore 套件。
<Project Sdk="Microsoft.NET.Sdk.Web"> ... <ItemGroup> <PackageReference Include="Jaeger" Version="0.3.6" /> <PackageReference Include="OpenTracing.Contrib.NetCore" Version="0.6.2" /> </ItemGroup> ... </Project> 修改 Startup.ConfigureServices 啟用。
... public class Startup { ... public void ConfigureServices(IServiceCollection services) { ... services.AddOpenTracing(); var serviceName = AppDomain.CurrentDomain.FriendlyName; var tracer = new Tracer.Builder(serviceName) .WithSampler(new ConstSampler(true)) .Build(); GlobalTracer.Register(tracer); services.AddSingleton<ITracer>(tracer); ... } ... } ... 到這邊程式 Controller 的 Action 已經會送到 Jaeger 可被 Tracing 了。
若要增加額外的 Tracing 的資訊,可透過 DI 或是 GlobalTracer.
read morePosts
Jaeger - Getting started
要使用 Jaeger,最簡便的做法是直接使用 Docker 去起 jaegertracing/all-in-one 容器。
docker run -d --name jaeger \ -e COLLECTOR_ZIPKIN_HTTP_PORT=9411 \ -p 5775:5775/udp \ -p 6831:6831/udp \ -p 6832:6832/udp \ -p 5778:5778 \ -p 16686:16686 \ -p 14268:14268 \ -p 9411:9411 \ jaegertracing/all-in-one 或是從下載頁下載 Jaeger。
wget https://github.com/jaegertracing/jaeger/releases/download/v1.16.0/jaeger-1.16.0-darwin-amd64.tar.gz 解壓縮。
tar xf jaeger-1.16.0-darwin-amd64.tar.gz 運行 jaeger-all-in-one 啟動 Jaeger 服務。
jaeger-all-in-one --collector.zipkin.http-port=9411 透過瀏覽器訪問 http://localhost:16686 應該就可以看到 Jaeger 的操作界面。
Link Getting Started — Jaeger documentation
read more