我正在尝试将异常记录到Application Insights.我通过TelemetryClient.TrackException直接打电话成功完成了这项工作.但是,我想在我的代码中抽象出来,以防我将来想要登录其他平台,所以我想只关注ILogger接口.
我发现你可以使用ILoggerFactory.AddApplicationInsights(在这里实现),但不管我做了什么,我都没有看到日志在ApplicationInsights中出现.
以下是我的代码:
Startup.cs
IConfigurationRoot Configuration { get; set; }
ILoggerFactory LoggerFactory { get; set; }
IServiceProvider ServiceProvider { get; set; }
public Startup( IHostingEnvironment hostingEnvironment, ILoggerFactory loggerFactory )
{
this.LoggerFactory = loggerFactory;
string configurationFilePath = "abc.json";
this.Configuration = new ConfigurationBuilder()
.SetBasePath( hostingEnvironment.ContentRootPath )
.AddJsonFile( configurationFilePath, optional: true, reloadOnChange: true )
.AddEnvironmentVariables()
.Build();
}
public void Configure(
IApplicationBuilder applicationBuilder,
IHostingEnvironment hostingEnvironment,
ILoggerFactory loggerFactory,
IServiceProvider serviceProvider )
{
this.ServiceProvider = serviceProvider;
loggerFactory.AddApplicationInsights( serviceProvider ); …Run Code Online (Sandbox Code Playgroud) c# logging azure-application-insights azure-web-app-service asp.net-core