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

启用Azure App Insight后Dynatrace无法采集Azure Web App日志问题求助

解决Azure Web App中App Insights与Dynatrace OneAgent共存时的追踪冲突问题

问题场景

  • 环境:Azure Web App(MVC/C#应用),同时启用Azure App Insights、安装Dynatrace OneAgent扩展
  • 现象:Dynatrace无法展示MVC/C#相关追踪日志;禁用App Insights后,Dynatrace追踪恢复正常
  • 前置排查:已提交微软工单,确认App Insights端无问题,建议排查Dynatrace侧

排查与解决步骤

1. 检查Dynatrace OneAgent版本兼容性

先确认你用的Dynatrace OneAgent是适配Azure Web App环境的最新稳定版,旧版本很可能存在和App Insights的追踪抢占冲突。直接在Azure门户的Web App扩展页面,把OneAgent更到最新版再测试。

2. 调整.NET追踪提供者优先级

App Insights和Dynatrace都靠.NET的ActivitySource/DiagnosticSource拦截追踪数据,二者可能抢资源。试试在代码里显式配置,让Dynatrace优先拿到追踪数据:

// 在Program.cs中添加配置
builder.Services.AddHttpClient();

ActivitySource.AddActivityListener(new ActivityListener
{
    ShouldListenTo = source => source.Name.StartsWith("Dynatrace") || source.Name.StartsWith("Microsoft.AspNetCore"),
    Sample = (ref ActivityCreationOptions<ActivityContext> options) => ActivitySamplingResult.AllData,
    ActivityStarted = activity => {},
    ActivityStopped = activity => {}
});

3. 限制App Insights的追踪范围

虽然微软说App Insights没问题,但可以先缩小它的追踪范围,减少冲突概率:
在appsettings.json里修改配置,暂时禁用部分重叠的追踪模块,测试Dynatrace是否恢复:

{
  "ApplicationInsights": {
    "ConnectionString": "你的连接字符串",
    "EnableDependencyTracking": false,
    "EnableRequestTracking": false
  }
}

测试正常后再逐步恢复配置,找出具体冲突的模块。

4. 检查Dynatrace端的监控配置

登录Dynatrace控制台,针对这个Web App做以下检查:

  • 确认已经启用了.NET应用的全栈追踪,MVC请求、控制器方法这些都要纳入追踪范围
  • 排查是否有针对App Insights的过滤规则,导致相关日志被误过滤
  • 去Azure Web App的Kudu站点,查看OneAgent的日志(路径:D:\home\SiteExtensions\Dynatrace.OneAgent\logs),有没有报错信息

5. 验证Azure Web App的环境变量

检查Web App的环境变量设置:

  • 确认DOTNET_STARTUP_HOOKS已经被OneAgent扩展正确设置,保证Dynatrace的启动钩子能加载
  • 添加DT_DISABLE_INSTRUMENTATION=false环境变量,强制启用Dynatrace的代码注入

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.11 09:52:49