РАЗДЕЛ 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