我在Azure中部署了一个ASP.NET Core Web项目,并配置了Application Insights。 Insights正在接收请求等的数据,但我无法显示我的日志。
我正在使用vanilla Microsoft.Extensions.Logging框架并在控制器操作上记录测试错误
logger.LogError("Test application insights message");
在我的Startup.cs配置方法中,我已经设置了
loggerFactory.AddAzureWebAppDiagnostics();
...并且可以成功查看Azure日志流中出现的错误消息:
2017-04-14 11:06:00.313 +00:00 [Error] Test application insights message
但是,我还希望此消息显示在Application Insights跟踪中,但无处可寻。我想我需要配置ILoggerFactory但不确定如何找到关于该主题的文档。
提前感谢您的帮助
答案 0 :(得分:10)
任何其他人试图解决这个问题,我得到了我想要的结果:
loggerFactory.AddApplicationInsights(app.ApplicationServices);
答案 1 :(得分:0)
对我来说,只有当我在我的 services.AddLogging
中将 InstrumentationKey 指定为 Startup.cs
时它才起作用:
services.AddApplicationInsightsTelemetry();
services.AddLogging(builder =>
{
// Only Application Insights is registered as a logger provider, get the key from appSettings.json file and add application insight
var instrumentationKey = Configuration.GetValue<string>("ApplicationInsights:InstrumentationKey");
builder.AddApplicationInsights(instrumentationKey);
});