从事件查看器中读取转发的事件

Reading the Forwarded Events from the Event Viewer

我希望解析器在事件查看器中抛出转发的事件以获得关于过去 12 小时的概览。 使用应用程序或系统日志时,这不是问题。但是当我尝试对转发事件日志进行相同操作时,它会抛出错误。

错误信息:

System.InvalidOperationException: The event log 'ForwardedEvents' on computer '.' does not exist

我目前获取日志的方式:

EventLog systemLog = new EventLog("System");
EventLog forwardedLog = new EventLog("ForwardedEvents");

所以我尝试将 ForwardedEvents 更改为 "system\forwardedevents"、"Forwarded Events",但这也没有用。

我注意到,如果我使用以下内容,则不会显示转发的事件。

EventLog.GetEventLogs()

是否有任何其他方式来读取事件查看器?

请使用EventLogReader

尝试以下方法:

        static void Main(string[] args)
        {
            EventLogQuery eventsQuery = new EventLogQuery("ForwardedEvents", PathType.LogName);

            try
            {
                EventLogReader logReader = new EventLogReader(eventsQuery);

                for (EventRecord eventdetail = logReader.ReadEvent(); eventdetail != null; eventdetail = logReader.ReadEvent())
                {
                    Console.WriteLine(eventdetail.FormatDescription());
                }
            }
            catch (EventLogNotFoundException e)
            {
                Console.WriteLine("Error while reading the event logs");
            }

            Console.ReadKey();
        }

我没有任何转发的事件,但它没有失败。