繁体   English   中英

ASP.NET Core 事件日志提供程序

[英]ASP.NET Core EventLog provider

我有一个使用 .NET Framework ASP.NET Core 2.0 的项目,并且想要实现对 Windows 事件日志的日志记录,就像我在这里<\/a>阅读的一样

添加日志提供程序

public class Program
{
        public static void Main(string[] args)
        {
            BuildWebHost(args).Run();
        }

        public static IWebHost BuildWebHost(string[] args) =>
            WebHost.CreateDefaultBuilder(args)
            .ConfigureLogging((hostingContext, logging) =>
            {
                logging.AddConfiguration(hostingContext.Configuration.GetSection("Logging"));
                logging.AddEventSourceLogger();
                logging.AddConsole();
            })
            .UseStartup<Startup>()
            .Build();
    }
logging.AddEventSourceLogger()

用于事件追踪

对于事件日志 ,您要使用:

logging.AddEventLog()

从Nuget安装Microsoft.Extensions.Logging.EventLog。

在program.cs文件中包含Microsoft.Extensions.Logging.EventLog

然后logging.AddEventLog()将成为可能,因此您将能够实现您的目标

这对我来说适用于net5.0:

 public static IHostBuilder CreateHostBuilder(string[] args) =>
    Host.CreateDefaultBuilder(args)
        .ConfigureLogging(logging =>
                            {
                                logging.ClearProviders();
                                logging.AddEventLog(new EventLogSettings()
                                        {
                                            SourceName = ".NET Runtime",
                                            LogName = "Application",
                                        });
                            }
                         )
        .ConfigureWebHostDefaults(webBuilder =>
        {
            webBuilder.UseStartup<Startup>();
        });

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM