Powershell – системные журналы и особенности фильтров по времени


Какое время и в каком формате использовать, если вы хотите получить события из системного журнала за определенное время? Есть небольшой сюрприз…

Если воспользоваться оснасткой Event Viewer, то в ней есть возможность установить фильтр, в том числе можно задать диапазон времени – время локальное для текущей сессии:

clip_image001

В результате имеем такой фильтр:

clip_image002

Если открыть представление этого фильтра в формате XML, то мы увидим:

clip_image003

 

Как вы видите, время перекодировано и задано в определенном формате (SortableDateTimePattern) и, более того, это время приведено к UTC!

Мы можем скопировать этот запрос и использовать его в командлете GetWinEvent  с параметром FilterXML – в результате получим массив с теми же событиями, что и в оснастке Event Viewer.

Теперь становится очевидным, что если вы хотите динамически построить фильтр содержащий время, то необходимо привести время к UTC и отформатировать надлежащим образом.

Вот пример такого форматирования:

$Today = [System.DateTime]::Today.ToUniversalTime().ToString(«s»)

$Yesterday = [System.DateTime]::Today.AddDays(-1).ToUniversalTime().ToString(«s»)

Теперь эти переменные можно использовать для построения фильтра:

$query = @”

<QueryList>

  <Query Id=»0″ Path=»Microsoft-Windows-PrintService/Operational»>

    <Select Path=»Microsoft-Windows-PrintService/Operational»>*[System[TimeCreated[@SystemTime>=$Yesterday and @SystemTime<=$Today]]]</Select>

  </Query>

</QueryList>

 

“@

Вызов командлета:

Get-WinEvent –FilterXML $query

Реклама

комментария 4

  1. […] Powershell – системные журналы и особенности фильтров по… […]

  2. […] Powershell – системные журналы и особенности фильтров по… […]

  3. […] Powershell – системные журналы и особенности фильтров по… […]

  4. […] Powershell – системные журналы и особенности фильтров по… […]

Добавить комментарий

Заполните поля или щелкните по значку, чтобы оставить свой комментарий:

Логотип WordPress.com

Для комментария используется ваша учётная запись WordPress.com. Выход / Изменить )

Фотография Twitter

Для комментария используется ваша учётная запись Twitter. Выход / Изменить )

Фотография Facebook

Для комментария используется ваша учётная запись Facebook. Выход / Изменить )

Google+ photo

Для комментария используется ваша учётная запись Google+. Выход / Изменить )

Connecting to %s

%d такие блоггеры, как: