Скрипт Powershell для фильтрации журналов событий Windows - PullRequest
0 голосов
/ 10 мая 2019

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

Я пробовал несколько итераций этого скрипта, я пытался запросить текст за «Сообщение об исключении:», чтобы я мог отфильтровать фразу «Невозможно установить соединение с базой данных»

Вот как выглядит мой сбойный скрипт:

Get-EventLog -LogName Application |
    Select-Object -Expand Message |
    Select-String -Pattern '(?<=Exception message:\s+)\d+' |
    Select-Object -Expand Matches |
    Select-Object -ExpandProperty value |
    where -filterscript {$_.Message -contains 'Unable to establish a connection to the database'}

Вот как выглядит журнал событий, который я хочу отфильтровать:

Информация об исключении:

Тип исключения: исключение

Сообщение об исключении: Невозможно установить соединение с базой данных.Может быть вниз.

1 Ответ

2 голосов
/ 10 мая 2019

Нет необходимости в дополнительной фильтрации. Get-EventLog может сделать это самостоятельно:

Get-EventLog -LogName Application -Message "*Unable to establish a connection to the database*"
...