我已经使用以下命令设置了log4net日志记录,Microsoft.Extensions.Logging和Azure Web App诊断记录的Azure托管ASP.Net Core应用程序:
public static IWebHostBuilder CreateWebHostBuilder(string[] args) =>
WebHost.CreateDefaultBuilder(args)
.ConfigureLogging((hostingContext, logging) =>
{
logging.AddConfiguration(hostingContext.Configuration.GetSection("Logging"));
logging.AddAzureWebAppDiagnostics();
logging.AddLog4Net();
})
.UseStartup<Startup>();
如果我使用Microsoft.Extensions.ILogger记录消息,则会将日志消息推送到log4net和Azure Web诊断程序,这是我期望的。
问题在于我们所有现有的代码都使用log4net而不是Microsoft.Extensions.ILogger来记录消息。发生这种情况时,它会记录到log4net附加程序,而不是Azure Web应用程序诊断程序。
所以我需要做的是使用log4net时,它还将日志消息推送到Azure Web应用程序诊断。
我该如何实现?