我没有看到任何日志记录进入我的应用程序洞察实例。
我有一个带有旧版本 .net core 的 Windows 服务。
我添加了这两个库:
dotnet add package Microsoft.ApplicationInsights.AspNetCore
dotnet add package Microsoft.ApplicationInsights.WorkerService
我更新了appsettings.json:
{
"ApplicationInsights": {
"ConnectionString": "InstrumentationKey=<Your_Instrumentation_Key>;IngestionEndpoint=https://<Your_Region>.applicationinsights.azure.com/"
}
}
对于
program.cs
我添加了这些行
我也添加了这个包
dotnet add package Serilog.Sinks.ApplicationInsights
并将其添加到
program.cs
我在 Azure 门户中没有看到任何日志记录进入我的应用程序洞察实例;但是,当我登录到 Windows 服务计算机并查看日志时,我收到日志:
我做错了什么?如何与 Serilog 一起获得在 Windows 服务上运行的应用程序见解?
如果无法同时使用 Serilog 和 App Insights,我很乐意扔掉 Serilog,只保留 App Insights。
我在我的 Program.cs 中使用了以下代码并且它有效:
var rithapp = "Application";
var rith_constr = "InstrumentationKey=b7a45ed9=fb6;IngestionEndpoint=https://canadacentral-1.in.applicationinsights.azure.com/;LiveEndpoint=https://canadacentral.livediagnostics.monitor.azure.com/;ApplicationId=5aa2ed1aa";
Log.Logger = new LoggerConfiguration()
.Enrich.FromLogContext()
.Enrich.WithProperty("ApplicationName", rithapp)
.WriteTo.ApplicationInsights(rith_constr, new TraceTelemetryConverter())
.CreateLogger();
Log.Information("Hello Rithwik, Windows Running");
套餐:
System.ServiceProcess
Serilog
Serilog.Sinks.ApplicationInsights.TelemetryConverters
输出: