如何将调试级别日志消息输出到生产中的Application Insights

时间:2018-05-14 13:47:30

标签: azure asp.net-core azure-application-insights

一个简单的ASP.NET Core 2.0 Web应用程序,在azure中作为应用程序服务部署 - 经过编辑,以确保ASPNETCORE_ENVIRONMENT开发和生产的配置相同。

使用Startup类的Configure方法中的以下内容:

loggerFactory.AddApplicationInsights(app.ApplicationServices, LogLevel.Debug);

会导致不同的行为,具体取决于ASPNETCORE_ENVIRONMENT的值。

使用基本的ASP.NET核心日志记录,配置了应用程序洞察,我得到以下行为:

使用ASPNETCORE_ENVIRONMENT ==开发

LogDebug消息在Azure门户实时指标流中显示为跟踪消息。但是,没有一个应用程序消息似乎仍然存在 - 它们无法通过visual studio或analytics查询.applicationinsights.io

使用ASPNETCORE_ENVIRONMENT == production

LogDebug消息不会在Azure门户实时指标流中显示为跟踪消息。保持级别信息级别以上的应用程序消息 - 可以通过visual studio或analytics查询它们.applicationinsights.io

有没有人知道如何在ASPNETCORE_ENVIRONMENT ==生产的情况下出现调试级别消息?

也许我的google fu很弱,但我找不到相关的相关文档。

2 个答案:

答案 0 :(得分:0)

ASPNETCORE_ENVIRONMENT变量不控制记录器行为。需要更多信息才能了解您遇到此行为的原因。 看到这个: https://github.com/Microsoft/ApplicationInsights-aspnetcore/issues/688

答案 1 :(得分:0)

将以下代码添加到您的appsettings.json中:

ID