当前位置: 首页 > 知识库问答 >
问题:

如何将调试级日志消息输出到生产中的应用程序洞察

单于扬
2023-03-14

一个简单的ASP.NET Core2.0web应用程序,作为应用程序服务部署在azure中-编辑以确保对ASPNETCORE_ENVIRONMENT开发和生产的配置是相同的。

在Startup类的Configure方法中包含以下内容:

LoggerFactory.AddApplicationInsights(App.ApplicationServices,LogLevel.Debug);

根据aspnetcore_environment的值,导致不同的行为。

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

LogDebug消息在Azure Portal Live Metrics流中显示为跟踪消息。但是,似乎没有一个应用程序消息可以持久存在--它们无法通过visual studio或Analytics.ApplicationInsights.io查询

使用ASPNETCORE_ENVIRONMENT==生产

LogDebug消息在Azure Portal Live Metrics流中不作为跟踪消息显示。信息级别或更高级别的应用程序消息被持久化--可以通过visual studio或Analytics.ApplicationInsights.io查询它们

也许我的google fu很弱,但是我找不到任何关于这个的相关文档。

共有1个答案

盖和泰
2023-03-14

ASPNETCORE_ENVIRONMENT变量不控制记录器行为。需要一些更多的信息来理解为什么你会遇到这种行为。请参阅:https://github.com/microsoft/applicationinsights-aspnetcore/issues/688

 类似资料:
  • 问题内容: 我有一个Flask应用程序,该应用程序运行良好并会偶尔出现错误,当与以下命令一起运行时可见: 我收到有用的错误消息,例如: 我在生产环境中运行应用程序时(使用Lighttpd + fastcgi)将这样的错误消息保存到文件中。 寻找不同的StackOverflow问题后(http://flask.pocoo.org/docs/errorhandling/,http://docs.pyt

  • 我正在开发一个简单的桌面应用程序(不是webapp)。 它们有不同的模式。好像他们忽略了我的设置。 我也试着应用我在这里找到的建议: https://spring.io/blog/2009/12/04/logging-dependencies-in-spring

  • 我有一个spring boot应用程序,我生成了spring war。我在wildfly 16中部署了它,但我发现日志只在信息模式下生成。当我在Tomcat中部署时,同样的战争会在调试模式下生成日志。 我使用log4j2进行日志记录 tomcat和wildfly日志中都使用了相同的log4j2。Wildfly/JBoss中是否有其他配置文件可用于启用调试级别??

  • 唯一可以解决这一问题的方法是在startup.configure()中添加下面一行代码: 上面的解决方案是不可取的,因为我们希望根据环境不同地配置日志级别,因此基于配置的解决方案将是首选的。此外,我猜测问题是配置相关的,因为它在本地运行良好。在Azure中没有特殊的配置。 下面是整个startup.configure():

  • 我在intellij中创建了一个简单的maven应用程序,并使用slf4j进行日志记录。 我无法在控制台中看到调试日志 我从C:\程序文件\jetbrains\intellij IDEA 2019.3\plugins\maven\lib\maven3\conf\logging\simpleLogger.properties中看到 默认日志级别设置为INFO org.slf4j.simpleLogg

  • 按照此链接中的说明,我在Azure中创建了一个Web应用程序,在.NET core framework中创建了一个Web API。 现在在我的Web应用程序中,启用了应用程序Insights。 在WebAPI中有一些类似的日志记录代码。 默认情况下,它会打印一些跟踪日志(类似于应用程序洞察)。 现在我的要求是它不应该打印应用程序Insights中的所有默认日志。它只能打印带有的文件。如何和在何处禁