从事件日志中删除一个事件(或将EventRecord投射到EventLogEntry)

时间:2016-11-30 10:59:48

标签: c# .net events system.diagnostics event-viewer

我的代码会筛选来自远程PC的事件,以测试是否有一些6008 (unexpected reboot)事件。

我使用的代码如下:

EventLog log = new EventLog("System",remoteMachine);
EventLogEntryCollection entries = log.Entries;
var entries_filtered = entries.Cast<EventLogEntry>().Where (x => x.EventID=6008);
foreach (EventLogEntry entry in entries) {//my logic here}

在此过程中,我不喜欢记录每个事件的方式(&#39;阅读事件&#39;),因此我提出了两个解决方案:

  1. 找到一种删除具有某些功能的事件的方法,这样我就可以删除我的 阅读活动

  2. 在阅读之前,请复制evtx文件并从此文件中读取事件。

  3. 但在这种情况下,我需要使用类似的东西:

    EventLogReader elr = new EventLogReader("C:\\myevents.evtx");    
    EventRecord a = elr.ReadEvent();
    

    我需要找到一种方法将EventRecord转换为EventLogEntryEventReader转换为EventLogEntryCollection,以消除更改下方整个逻辑的需要。< / p>

    有关这两种情况的任何想法吗?

    由于

0 个答案:

没有答案