我已经配置了我的跟踪提供者、检测工具和OTLP导出程序,它们在弹性云可观测性仪表板中工作得很好。
设置服务名称很容易,但似乎没有设置环境名称的通用API。
因此,当我单击跟踪时,我看到的都是全部定义的或未定义的。

发布于 2022-04-26 15:54:29
在仔细浏览了开放遥测的弹性搜索文档之后,我发现绝对没有关于如何做到这一点的任何信息!?
但是他们确实有一个例子,当我将代码向右滚动时,显示了他们正在添加的一些额外属性。甚至在它下面的台词里都没有提到。
您需要与OTEL出口商传递的属性是deployment.environment。
下面是为您解决问题的代码片段。
var otelAttributes = new List<KeyValuePair<string, object>>();
otelAttributes.Add(new KeyValuePair<string, object>("deployment.environment", environmentName));然后,您需要在ResourceBuilder中添加属性
sdkSetup
.AddSource("*")
.SetSampler(new TraceIdRatioBasedSampler(samplerRateValue))
.SetResourceBuilder(
ResourceBuilder
CreateDefault()
.AddService(ResourceNameHelper.ServiceName)
.AddAttributes(otelAttributes) // <-- Over Here
.AddTelemetrySdk()
)现在,环境将被标记为所有的跟踪、度量和日志。

https://stackoverflow.com/questions/72016974
复制相似问题