在.net核心2.1.1中,使用以下方式注册应用程序见解:
public void ConfigureServices(IServiceCollection services)
{
...
services.AddApplicationInsightsTelemetry(Configuration); //register InstrumentationKey
...
}
public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)
{
...
loggerFactory.AddApplicationInsights(app.ApplicationServices, LogLevel.Information);
...
}
但是,当我在.net核心2.2.0中包含它时,我收到警告:
'ApplicationInsightsLoggerFactoryExtensions.AddApplicationInsights(ILoggerFactory,IServiceProvider,LogLevel)'已过时:'使用来自Microsoft.Extensions.Logging.ApplicationInsights包的Microsoft.Extensions.Logging.ApplicationInsightsLoggingBuilderExtensions.AddApplicationInsights'
我已经包括Microsoft.Extensions.Logging.ApplicationInsights package
包并使用如下:
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
...
ApplicationInsightsLoggingBuilderExtensions.AddApplicationInsights(...//some params//);
...
}
这不允许我定义应用程序洞察的日志记录级别。如何在.net core 2.2.0中定义日志记录级别?
请看看这个article
如果它是.net核心Web项目,您可以使用以下代码在program.cs中设置日志级别:
public static IWebHostBuilder CreateWebHostBuilder(string[] args) =>
WebHost.CreateDefaultBuilder(args)
.UseStartup<Startup>()
.ConfigureLogging(
builder =>
{
builder.AddApplicationInsights("app insights instrumentation key");
// You can set log level here
builder.AddFilter<Microsoft.Extensions.Logging.ApplicationInsights.ApplicationInsightsLoggerProvider>
("", LogLevel.Information);
}
);