TÓPICO
about_EventLogs
DESCRIÇÃO RESUMIDA
O Windows PowerShell cria um log de eventos do Windows que é
denominado "Windows PowerShell" para registrar eventos do Windows
PowerShell. Você pode exibir esse log no Visualizador de Eventos ou
usando cmdlets que obtêm eventos, como o cmdlet Get-EventLog. Por
padrão, os eventos de mecanismo e provedor do Windows PowerShell são
registrados no log de eventos, mas você pode usar as variáveis de
preferência do log de eventos para personalizá-lo. Por exemplo,
você pode adicionar eventos sobre comandos do Windows PowerShell.
DESCRIÇÃO LONGA
O log de eventos do Windows PowerShell registra detalhes de
operações do Windows PowerShell, como início e interrupção do
mecanismo do programa e início e interrupção dos provedores do Windows
PowerShell. Você também pode registrar em log detalhes sobre comandos
do Windows PowerShell.
No Windows Vista e em versões posteriores, o log de eventos do Windows
PowerShell está no grupo Logs de Aplicativos e Serviços. O log do Windows
PowerShell é um log de eventos clássico que não usa a tecnologia de
Eventos do Windows. Para exibir o log, use os cmdlets criados para
logs de eventos clássicos, como Get-EventLog.
Exibindo o log de eventos do Windows PowerShell
Você pode exibir o log de eventos do Windows PowerShell no
Visualizador de Eventos ou usar os cmdlets Get-EventLog e
Get-WmiObject. Para exibir o conteúdo do log do Windows
PowerShell, digite:
get-eventlog -logname "Windows PowerShell"
Para examinar os eventos e suas propriedades, use o cmdlet
Sort-Object, o cmdlet Group-Object e os cmdlets que contêm o
verbo Format (os cmdlets Format).
Por exemplo, para exibir os eventos no log agrupados pela ID do
evento, digite:
get-eventlog "Windows PowerShell" | format-table -groupby eventid
Ou digite:
get-eventlog "Windows PowerShell" | sort-object eventid `
| group-object eventid
Para exibir todos os logs de eventos clássicos, digite:
get-eventlog -list
Você também pode usar o cmdlet Get-WmiObject para usar as
classes WMI (Instrumentação de Gerenciamento do Windows)
relacionadas a eventos para examinar o log de eventos.
Por exemplo, para exibir todas as propriedades do arquivo de log de
eventos, digite:
get-wmiobject win32_nteventlogfile | where `
{$_.logfilename -eq "Windows PowerShell"} | format-list -property *
Para localizar as classes WMI relacionadas a eventos Win32, digite:
get-wmiobject -list | where {$_.name -like "win32*event*"}
Para obter mais informações, digite "get-help get-eventlog" e
"get-help get-wmiobject".
Selecionando eventos para o log de eventos do Windows PowerShell
Você pode usar as variáveis de preferência do log de eventos
para saber quais eventos são registrados no log de eventos do
Windows PowerShell.
Há seis variáveis de preferência do log de eventos; duas
variáveis para cada um dos três componentes do log: o mecanismo (o
programa Windows PowerShell), os provedores e os comandos. As variáveis
LifeCycleEvent registram eventos normais de início e interrupção. As
variáveis Health registram eventos de erro.
A tabela a seguir lista as variáveis de preferência do log de eventos.
Variable Descrição
-------------------------- ----------------------------------------
$LogEngineLifeCycleEvent Registra em log o início e a interrupção do
Windows PowerShell.
$LogEngineHealthEvent Registra em log erros do programa
Windows PowerShell.
$LogProviderLifeCycleEvent Registra em log o início e a interrupção de
provedores do Windows PowerShell.
$LogProviderHealthEvent Registra em log erros de provedor do Windows
PowerShell.
$LogCommandLifeCycleEvent Registra em log o início e a conclusão de
comandos.
$LogCommandHealthEvent Registra em log erros de
comandos.
(Para obter informações sobre provedores do Windows PowerShell,
digite: "get-help about_providers".)
Por padrão, somente os tipos de evento a seguir estão habilitados:
$LogEngineLifeCycleEvent
$LogEngineHealthEvent
$LogProviderLifeCycleEvent
$LogProviderHealthEvent
Para habilitar um tipo de evento, defina a variável de
preferência para esse tipo de evento como $true. Por exemplo, para
habilitar eventos de ciclo de vida de comando, digite:
$LogCommandLifeCycleEvent
Ou digite:
$LogCommandLifeCycleEvent = $true
Para desabilitar um tipo de evento, defina a variável de
preferência para esse tipo de evento como $false. Por exemplo, para
desabilitar eventos de ciclo de vida de comando, digite:
$LogProviderLifeCycleEvent = $false
As configurações da variável se aplicam apenas à sessão atual
do Windows PowerShell. Para aplicá-las a todas as sessões do Windows
PowerShell, adicione-as a seu perfil do Windows PowerShell.
Segurança e auditoria
O log de eventos do Windows PowerShell foi criado para indicar
atividade e fornecer detalhes operacionais para solução de
problemas.
Porém, como a maioria dos logs de eventos de aplicativos baseados no
Windows, o log de eventos do Windows PowerShell não foi projetado para ser
seguro. Ele não deve ser usado para auditar segurança ou para registrar
informações confidenciais ou proprietárias.
Logs de eventos são criados para serem lidos e compreendidos
por usuários. Usuários podem ter acesso de leitura e gravação
no log. Um usuário mal-intencionado pode ler um log de eventos em um
computador local ou remoto, registrar dados falsos e impedir o
registro em log de suas atividades.
CONSULTE TAMBÉM
Get-EventLog
Get-WmiObject
about_Preference_Variables