我正在尝试为我的应用程序 EventLoggingApp 阅读事件日志。问题是正在读取我的单一来源(EventLoggingApp)的日志。

此代码读取每个源的日志。问题是什么?有什么建议吗?

static void ReadEvenLog()
{
    string eventLogName = "Application";
    string sourceName = "EventLoggingApp";
    string machineName = "Tom";

    EventLog eventLog = new EventLog();
    eventLog.Log = eventLogName;
    eventLog.Source = sourceName;
    eventLog.MachineName = machineName;

    foreach (EventLogEntry log in eventLog.Entries)
    {
        Console.WriteLine("{0}\n",log.Source);
    }
}

最佳答案

试试这个:

EventLog log = new EventLog("Security");
var entries = log.Entries.Cast<EventLogEntry>()
                         .Where(x => x.InstanceId == 4624)
                         .Select(x => new
                         {
                             x.MachineName,
                             x.Site,
                             x.Source,
                             x.Message
                         }).ToList();

07-25 23:06