我一直在读一些关于aspnetcore和otel的视频。
b/c有点挑战性,自2020年以来,api表面似乎已经发生了相当大的变化。
我已经通过OpenTelemetry.Extensions.Hosting、OpenTelemetry.Instrumentation.HTTP、OpenTelemetry.Instrumentation.AspNetCore和一个Jaeger出口商连接了我的aspnetcore解决方案。
我有几个问题
谢谢!
发布于 2021-08-20 18:41:20
如何设置顶级服务名称(它在jaeger中显示一个未知服务)?
您可以使用Resource来实现这一点。有几种方法可以做到这一点。可以设置env变量OTEL_RESOURCE_ATTRIBUTES=service.name=my-service-name或OTEL_SERVICE_NAME=my-service-name。
如果您想以编程方式执行此操作,则需要将一个寄存器对象寄存器到TracerProvider。
我试图将我的租户标识符传播到所有与span相关的调用。我使用的是activity.Current.AddBaggage("TenantId",MyTenantId),但是这个值并没有导出到jaeger (行李项没有出现在jaeger收到的原始json中)。
我不认为行李是自动添加到追踪中的。对于这种使用,您可能应该查看TraceState。
我希望在所有传出响应的响应头中包含活动id。我需要自己写这个吗,还是把它写到某个地方的aspnet核心英特尔代码中?
我不太熟悉aspnet插装组件,但是应该有一些钩子可以这样做。JS、Python和其他客户端库具有此特性。
https://stackoverflow.com/questions/68864496
复制相似问题