РАЗДЕЛ
about_EventLogs
КРАТКОЕ ОПИСАНИЕ
Windows PowerShell создает журнал событий Windows с именем "Windows
PowerShell" для записи событий Windows PowerShell. Этот журнал можно
просматривать в средстве просмотра событий или с помощью командлетов,
получающих события, например командлета Get-EventLog. По умолчанию в
журнал событий записываются события обработчика и поставщика Windows
PowerShell, однако с помощью привилегированных переменных журнал
событий можно настраивать. Например, можно добавить в него события,
связанные с командами Windows PowerShell.
ПОЛНОЕ ОПИСАНИЕ
В журнал событий Windows PowerShell записываются сведения об операциях
Windows PowerShell, например о запуске и остановке обработчика
программы и о запуске и остановке поставщиков Windows PowerShell.
Кроме того, в журнал можно записывать сведения о командах Windows
PowerShell.
В Windows Vista и более поздних версиях Windows журнал событий Windows
PowerShell находится в группе журналов приложений и служб. Журнал Windows
PowerShell является классическим журналом событий, не использующим
технологию обработки событий Windows. Для просмотра журнала используются
командлеты, предназначенные для классических журналов событий,
например Get-EventLog.
Просмотр журнала событий Windows PowerShell
Журнал событий Windows PowerShell можно просматривать с помощью
средства просмотра событий или командлетов Get-EventLog и
Get-WmiObject. Для просмотра содержимого журнала Windows
PowerShell введите следующую команду:
get-eventlog -logname "Windows PowerShell"
Для просмотра событий и их свойств следует использовать
командлет Sort-Object, командлет Group-Object и командлеты,
содержащие слово Format (командлеты the Format).
Например, для просмотра событий в журнале событий, сгруппированных
по идентификатору события, введите следующую команду:
get-eventlog "Windows PowerShell" | format-table -groupby eventid
Также можно ввести команду:
get-eventlog "Windows PowerShell" | sort-object eventid `
| group-object eventid
Для просмотра классических журналов событий введите следующую
команду:
get-eventlog -list
Кроме того, можно воспользоваться командлетом Get-WmiObject, чтобы
использовать для просмотра журнала событий классы инструментария WMI.
Например, для просмотра всех свойств файла журнала событий введите
следующую команду:
get-wmiobject win32_nteventlogfile | where `
{$_.logfilename -eq "Windows PowerShell"} | format-list -property *
Чтобы найти классы WMI, связанные с событием Win32, введите
следующую команду:
get-wmiobject -list | where {$_.name -like "win32*event*"}
Чтобы получить дополнительные сведения, введите команды get-help get-
eventlog и get-help get-wmiobject.
Выбор событий для журнала событий Windows PowerShell
Привилегированные переменные журнала событий позволяют
определять, какие события записываются в журнал событий Windows
PowerShell.
Имеется шесть привилегированных переменных журнала событий - по
одной для каждого из компонентов ведения журнала: обработчика
(программы Windows PowerShell), поставщиков и команд. Переменные
LifeCycleEvent отвечают за ведение журнала стандартных событий запуска и
остановки. Переменные Health отвечают за ведение журнала ошибок.
В следующей таблице перечислены привилегированные переменные журнала
событий.
Переменная Описание
-------------------------- ----------------------------------------
$LogEngineLifeCycleEvent Запись в журнал событий запуска и
завершения Windows PowerShell.
$LogEngineHealthEvent Запись в журнал ошибок программы
Windows PowerShell.
$LogProviderLifecycleEvent Запись в журнал событий запуска и
завершения поставщиков Windows PowerShell.
$LogProviderHealthEvent Запись в журнал ошибок поставщиков
Windows PowerShell.
$LogCommandLifeCycleEvent Запись в журнал событий запуска и
завершения команд.
$LogCommandHealthEvent Запись в журнал ошибок команд.
(Чтобы получить дополнительные сведения о поставщиках Windows
PowerShell, введите команду get-help about_providers.)
По умолчанию включена регистрация в журнале событий только следующих
типов:
$LogEngineLifeCycleEvent
$LogEngineHealthEvent
$LogProviderLifecycleEvent
$LogProviderHealthEvent
Чтобы включить тип событий, установите для привилегированной
переменной для этого типа значение $true. Например, чтобы
включить события жизненного цикла команд, введите следующую команду:
$LogCommandLifeCycleEvent
Также можно ввести следующую команду:
$LogCommandLifeCycleEvent = $true
Чтобы отключить тип событий, установите для привилегированной
переменной для этого типа значение $false. Например, чтобы отключить
события жизненного цикла команд, введите следующую команду:
$LogProviderLifeCycleEvent = $false
Действие этих переменных распространяется только на текущий
сеанс Windows PowerShell. Чтобы применить их ко всем сеансам
Windows PowerShell, добавьте их в профиль Windows PowerShell.
Безопасность и аудит
Журнал событий Windows PowerShell предназначен для регистрации
операций и сохранения сведений, необходимых для устранения
неполадок.
Но, как и большинство журналов событий приложений на базе
Windows, журнал событий небезопасен. Его не следует использовать для
аудита системы безопасности или записи конфиденциальных сведений или
сведений, представляющих интеллектуальную собственность.
Журналы событий разработаны таким образом, чтобы они были
удобны и понятны пользователям. Пользователи могут выполнять
запись и чтение в журналах. Злоумышленник может прочитать
журнал событий на локальном или удаленном компьютере, записать
поддельные данные или препятствовать ведению журнала операций.
СМ. ТАКЖЕ
Get-EventLog
Get-WmiObject
about_Preference_Variables