Azure AppInsights 未正确初始化

问题描述 投票:0回答:1

我的应用服务的 App Insights 存在问题,它似乎初始化错误。 对于上下文,我有两个运行 .NET api + Angular SPA 的应用程序服务(测试、产品)。两者的部署方式相同,唯一的区别是发布配置(暂存和发布)仅更改 Angular 应用程序构建配置。

我以这种方式为我的应用程序设置日志记录和应用程序见解:

builder.Logging.AddAzureWebAppDiagnostics();
builder.Services.Configure<AzureFileLoggerOptions>(options =>
{
    options.FileName = "azure-diagnostics-";
    options.FileSizeLimit = 50 * 1024;
    options.RetainedFileCountLimit = 5;
});
builder.Logging.AddApplicationInsights(
    config => config.ConnectionString = builder.Configuration.GetConnectionString("APPLICATIONINSIGHTS_CONNECTION_STRING"),
    _ => { }
);

对于测试应用程序服务,没有问题,我可以在 AppInsights -> test-app-insights -> 日志 -> 运行跟踪查询中访问跟踪

对于生产应用程序服务,我没有可用的痕迹。问题是,代码确实是相同的,而且我仔细检查了配置,它们看起来是相同的。

但是,我发现我的测试应用程序具有生产应用程序没有的配置。我认为该配置是由应用程序见解生成的。

这是测试应用程序服务配置:

[
  {
    "name": "APPINSIGHTS_INSTRUMENTATIONKEY",
    "value": "<key>",
    "slotSetting": true
  },
  {
    "name": "APPINSIGHTS_PROFILERFEATURE_VERSION",
    "value": "1.0.0",
    "slotSetting": true
  },
  {
    "name": "APPINSIGHTS_SNAPSHOTFEATURE_VERSION",
    "value": "1.0.0",
    "slotSetting": true
  },
  {
    "name": "APPLICATIONINSIGHTS_CONNECTION_STRING",
    "value": "<connection-string>",
    "slotSetting": false
  },
  {
    "name": "APPLICATIONINSIGHTS_ENABLESQLQUERYCOLLECTION",
    "value": "disabled",
    "slotSetting": false
  },
  {
    "name": "ApplicationInsightsAgent_EXTENSION_VERSION",
    "value": "~2",
    "slotSetting": true
  },
  {
    "name": "DiagnosticServices_EXTENSION_VERSION",
    "value": "~3",
    "slotSetting": true
  },
  {
    "name": "DISABLE_APPINSIGHTS_SDK",
    "value": "disabled",
    "slotSetting": false
  },
  {
    "name": "IGNORE_APPINSIGHTS_SDK",
    "value": "disabled",
    "slotSetting": false
  },
  {
    "name": "InstrumentationEngine_EXTENSION_VERSION",
    "value": "disabled",
    "slotSetting": true
  },
  {
    "name": "SnapshotDebugger_EXTENSION_VERSION",
    "value": "disabled",
    "slotSetting": true
  },
  {
    "name": "WEBSITE_APPINSIGHTS_ENCRYPTEDAPIKEY",
    "value": "{\"ApiKey\":\"<api-key>",\"AppId\":\"<app-id>\"}",
    "slotSetting": false
  },
  {
    "name": "WEBSITE_HTTPLOGGING_RETENTION_DAYS",
    "value": "30",
    "slotSetting": false
  },
  {
    "name": "XDT_MicrosoftApplicationInsights_BaseExtensions",
    "value": "disabled",
    "slotSetting": true
  },
  {
    "name": "XDT_MicrosoftApplicationInsights_Mode",
    "value": "recommended",
    "slotSetting": true
  },
  {
    "name": "XDT_MicrosoftApplicationInsights_PreemptSdk",
    "value": "disabled",
    "slotSetting": true
  }
]

这是生产应用程序服务配置:

[
  {
    "name": "APPINSIGHTS_INSTRUMENTATIONKEY",
    "value": "<key>", // double checked the value -> ok
    "slotSetting": false
  },
  {
    "name": "APPLICATIONINSIGHTS_CONNECTION_STRING",
    "value": "<connection-string>", // double checked the value -> ok
    "slotSetting": false
  },
  {
    "name": "ApplicationInsightsAgent_EXTENSION_VERSION",
    "value": "~2", // Was at 3 at the beggining, I tried changing it to two to see if any changes would happen. Did not.
    "slotSetting": false
  },
  {
    "name": "WEBSITE_HTTPLOGGING_RETENTION_DAYS",
    "value": "30",
    "slotSetting": false
  },
  {
    "name": "XDT_MicrosoftApplicationInsights_Mode",
    "value": "Recommended",
    "slotSetting": false
  }
]

确实,对于测试应用程序服务,配置存在问题,该配置是在我使用 App Insights 配置更新部署 Web 应用程序版本时生成的(请参阅上面的 .NET 代码)。

这个问题的根源是什么?我可以仔细检查什么? 我还尝试重新启动应用程序服务,但这并没有解决问题。目前,我没有尝试手动添加缺少的配置,因为我不确定它的行为方式,因为它似乎是由 App Insights 生成的,以避免任何冲突,并确保我将拥有正确的值配置

请随时询问任何需要的信息。我会相应地更新帖子 谢谢

azure-application-insights azure-appservice
1个回答
0
投票

好的,所以不确定效果如何

我决定删除用于生产的应用程序见解资源,在我的应用程序服务上禁用应用程序见解并清理剩余的相关配置。

然后我再次启用,效果很好。不再有配置问题,不再显示日志。

我发布这个答案,以便人们可以找到可能的解决方案,如果我没有错过它,则不会在 Azure 帮助等地方显示。事实上,这可能取决于您是否可以出于商业原因删除您的应用洞察。

请随时添加任何其他建议。

© www.soinside.com 2019 - 2024. All rights reserved.