gpt4 book ai didi

c# - Log4Net 和 Application Insights - 没有数据通过

转载 作者:行者123 更新时间:2023-11-30 23:11:10 25 4
gpt4 key购买 nike

我在我的 C# 控制台应用程序中使用 Log4Net,并希望记录的事件也显示在 Application Insights 中。

我添加了 Application Insights 以及 Application Insights Log4Net Appender。

我已按照此处的说明进行操作:https://jan-v.nl/post/using-application-insights-in-your-log4net-application没有运气。

Log4Net 记录良好。但是,当我转到 Application Insights 仪表板时,我看到:“应用程序在 APPLICATION INSIGHTS 中没有数据。”

在我的主要 cs 文件的开头,我有这个:

var telemetryClient = new TelemetryClient { InstrumentationKey = ConfigurationManager.AppSettings["applicationInsights"] };

最后是这样的:

telemetryClient.Flush();

在我的 app.config 文件中,我有这个:

 <log4net>
<root>
<level value="INFO" />
<appender-ref ref="FileAppender" />
<appender-ref ref="aiAppender" />
</root>
<appender name="FileAppender" type="log4net.Appender.FileAppender">
<file value="C:\logs\logfile.txt" />
<appendToFile value="true" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] – %message%newline" />
</layout>
</appender>
<appender name="aiAppender" type="Microsoft.ApplicationInsights.Log4NetAppender.ApplicationInsightsAppender, Microsoft.ApplicationInsights.Log4NetAppender">
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%message%newline" />
</layout>
</appender>
</log4net>

当我运行应用程序时,我在输出窗口中看到这样的东西:

Application Insights Telemetry (unconfigured): {"name":"Microsoft.ApplicationInsights.Message","time":"2017-07-04T10:26:15.7741453Z","tags":{"ai.internal.sdkVersion":"log4net:2.2.0-220","ai.cloud.roleInstance":"xxx","ai.user.id":"AzureAD\\xxx"},"data":{"baseType":"MessageData","baseData":{"ver":2,"message":"xxx","severityLevel":"Information","properties":{xxx"}}}}

我错过了什么?

最佳答案

自提出这个问题以来,ApplicationInsights 不断发展。由于各种原因,原始静态 TelemetryConfiguration.Active 现在已过时。那些仍在尝试快速设置他们的 log4net 配置的人可以这样做(在他们的 log4net 配置文件中):

<appender name="aiAppender" type="Microsoft.ApplicationInsights.Log4NetAppender.ApplicationInsightsAppender, Microsoft.ApplicationInsights.Log4NetAppender">
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%message%newline" />
</layout>
<threshold value="INFO" />
<InstrumentationKey value="12345678-7946-1234-1234-8b330fbe1234" />
</appender>

关于c# - Log4Net 和 Application Insights - 没有数据通过,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44905246/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com