Доступ к локальному журналу событий в C # - PullRequest
2 голосов
/ 22 ноября 2011

Я хочу подключиться к локальному журналу и получить от него некоторые события. Я использую этот код:

EventLog el = new EventLog();
el.Source = "";

Но я не знаю, что такое локальный источник EventLog.Кто-нибудь знает, что такое местный источник?

Ответы [ 3 ]

2 голосов
/ 22 ноября 2011

Это зависит от того, какой тип журнала вы хотите прочитать.Это может быть Application, Security, Setup или System.

. В Просмотр событий доступны источники:

enter image description here

2 голосов
/ 22 ноября 2011

Я сделал программу раньше месяца, например: (используя запрос xpath)

 const string queryString = @"<QueryList>  <Query Id=""0"" Path=""Security"">    <Select Path=""Security"">*</Select>  </Query></QueryList>";

        EventLogQuery eventsQuery = new EventLogQuery("Security", PathType.LogName, queryString);
        eventsQuery.ReverseDirection = true;
        EventLogReader logReader = new EventLogReader(eventsQuery);

        for (EventRecord eventInstance = logReader.ReadEvent();
            null != eventInstance; eventInstance = logReader.ReadEvent())
        {
            foreach (var VARIABLE in  eventInstance.Properties)
                if (VARIABLE.Value.ToString().ToLower().Contains(...)
                {
                    ...
                }
         }
0 голосов
/ 22 ноября 2011

По вашему вопросу ... что такое локальный источник - вы хотите сказать, что хотите получить список источников или просто хотите подтвердить, что локальный источник - это машина, на которой выполняется процесс?

Что касается перечисления событий ... есть много разных способов сделать это, включая

var log = new EventLog("Application");
res = from entry in log.Entries.Cast<EventLogEntry>()
 entry.TimeGenerated >= start
  select entry;


                foreach (var e in res)
                {
                    Console.WriteLine(e.Message);
                }
...