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

时间:2019-06-12 06:53:22

标签: c# 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()

还有其他方法可以读取事件查看器吗?

1 个答案:

答案 0 :(得分:1)

请使用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();
        }

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