You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure中使用OpenTelemetry时App Insights组件名称及Cloud RoleName异常问题

Azure OpenTelemetry追踪问题排查

我在Azure上使用OpenTelemetry追踪服务时遇到两个问题:

  1. Azure Application Map显示的追踪组件名称不正确,上报的Cloud RoleName也有误——App Insights显示的是Function App名称而非具体的Function名称(我的Function名为FirewallCreate)。
  2. 追踪结果中显示了同一Function App中的另一个函数名称,且该组件标注0ms耗时和0调用量。

我的工具方法及函数代码如下:

def get_otel_new_tracer(name=__name__):
    # Setup a TracerProvider(). For more details read:
    # https://learn.microsoft.com/en-us/azure/azure-monitor/app/opentelemetry-enable?tabs=python#set-the-cloud-role-name-and-the-cloud-role-instance
    trace.set_tracer_provider(
        TracerProvider(
            resource=Resource.create(
                {
                    SERVICE_NAME: name,
                    SERVICE_NAMESPACE: name,
                    # SERVICE_INSTANCE-ID: "my-instance-id"
                }
            )
        )
    )

    # Send messages to Exporter in batches
    span_processor = BatchSpanProcessor(
    AzureMonitorTraceExporter.from_connection_string(
        os.environ["TRACE_APPINSIGHTS_CONNECTION_STRING"]
        )
    )
    trace.get_tracer_provider().add_span_processor(span_processor)

    return trace.get_tracer(name)


def firewall_create():
    tracer = get_otel_new_tracer("FirewallCreate")
    with tracer.start_new_span("span-firewall-create") as span:
        # do some stuff
        ...

问题1:可能存在的错误

  • TracerProvider重复初始化冲突:每次调用get_otel_new_tracer都会重置全局TracerProvider。如果同一Function App内的其他函数也用了相同逻辑,后执行的函数会覆盖之前的Resource配置,导致FirewallCreate的追踪被其他函数的配置污染,显示成错误的函数名称。
  • Cloud RoleName未显式配置:当前仅设置了SERVICE_NAME和SERVICE_NAMESPACE,但Azure App Insights识别Cloud RoleName需要对应cloud.role.name属性。默认情况下Function App会自动上报自身名称作为RoleName,你的自定义配置未覆盖这个默认值。
  • Span上下文关联异常:如果函数执行过程中存在跨Span调用或依赖,可能出现上下文串线,导致追踪归属到错误组件。

问题2:0ms耗时和0调用量的解读

  • 0调用量:表示该组件(另一个函数)没有产生任何被追踪的请求,当前显示的组件条目是TracerProvider被覆盖后残留的元数据,并非实际有调用记录。
  • 0ms耗时:因为没有对应的实际追踪Span数据,所以耗时统计为0。本质是错误的Resource元数据被上报,但没有匹配的调用Span,因此出现空统计值。

内容的提问来源于stack exchange,提问作者Bhaskar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 00:30:57