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

.NET Core部署Azure App Service后ITelemetryInitializer/Processor失效

可能导致自定义遥测初始化器/处理器在Azure App Service中失效的原因

以下是几种常见的原因及排查方向:

  • App Insights站点扩展的优先级冲突
    Azure App Service自带的Application Insights站点扩展,若启用会独立于应用内SDK处理遥测,可能覆盖或跳过你的自定义初始化器/处理器。建议检查App Service的"扩展"面板,若已安装该扩展,尝试禁用并依赖应用内的App Insights SDK配置。

  • 依赖注入顺序错误
    确保在Startup.ConfigureServices中,先调用AddApplicationInsightsTelemetry()完成App Insights的基础注册,再添加自定义的ITelemetryInitializer或ITelemetryProcessor。如果顺序颠倒,默认的App Insights配置可能会覆盖你的自定义注册。

  • 部署代码不完整
    检查部署到App Service的代码是否包含自定义初始化器/处理器的编译文件。可通过Kudu工具(https://<你的应用名>.scm.azurewebsites.net)查看wwwroot目录下的程序集,确认类已正确编译部署。同时查看应用日志流,排查是否有组件加载失败的异常。

  • 环境配置差异
    本地开发环境和Azure生产环境的App Insights配置可能不一致。检查appsettings.Production.json中的遥测配置,确认采样率、遥测开关等设置未禁用自定义逻辑。另外,应用设置中的APPINSIGHTS_INSTRUMENTATIONKEY等环境变量是否正确,是否存在覆盖遥测管道的配置。

  • 遥测采样过滤
    Azure App Insights默认可能启用自适应采样,部分事件被采样过滤,导致你查看的事件恰好未包含自定义user ID。可在App Insights查询中尝试过滤user_AuthenticatedUserId != "",或临时在配置中设置采样率为100%测试:

"ApplicationInsights": {
  "Sampling": {
    "Enabled": false
  }
}
  • TelemetryProcessor执行顺序问题
    若存在多个TelemetryProcessor,自定义处理器可能在其他处理器之后执行,后续处理器可能重置了user ID。调整AddApplicationInsightsTelemetryProcessor的调用顺序,确保自定义处理器优先执行,同时检查其他处理器的逻辑是否修改了用户标识。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.24 17:37:03