Get-Event
Obtém os eventos na fila de eventos.
Sintaxe
Get-Event
[[-SourceIdentifier] <String>]
[<CommonParameters>]
Get-Event
[-EventIdentifier] <Int32>
[<CommonParameters>]
Description
O cmdlet Get-Event
obtém eventos na fila de eventos do PowerShell para a sessão atual. Você pode obter todos os eventos ou usar o parâmetro EventIdentifier ou SourceIdentifier para especificar os eventos.
Quando um evento ocorre, ele é adicionado à fila de eventos. A fila de eventos inclui eventos para os quais você registrou, eventos criados usando o cmdlet New-Event
e o evento gerado quando o PowerShell é encerrado. Você pode usar Get-Event
ou Wait-Event
para obter os eventos.
Esse cmdlet não obtém eventos dos logs do Visualizador de Eventos. Para obter esses eventos, use Get-WinEvent
ou Get-EventLog
.
Exemplos
Exemplo 1: Obter todos os eventos
PS C:\> Get-Event
Esse comando obtém todos os eventos na fila de eventos.
Exemplo 2: Obter eventos por identificador de origem
PS C:\> Get-Event -SourceIdentifier "PowerShell.ProcessCreated"
Esse comando obtém eventos nos quais o valor da propriedade SourceIdentifier é PowerShell.ProcessCreated.
Exemplo 3: Obter um evento com base na hora em que foi gerado
PS C:\> $Events = Get-Event
PS C:\> $Events[0] | Format-List -Property *
ComputerName :
RunspaceId : c2153740-256d-46c0-a57c-b805917d1b7b
EventIdentifier : 1
Sender : System.Management.ManagementEventWatcher
SourceEventArgs : System.Management.EventArrivedEventArgs
SourceArgs : {System.Management.ManagementEventWatcher, System.Management.EventArrivedEventArgs}
SourceIdentifier : ProcessStarted
TimeGenerated : 11/13/2008 12:09:32 PM
MessageData : PS C:\> Get-Event | Where {$_.TimeGenerated -ge "11/13/2008 12:15:00 PM"}
ComputerName :
RunspaceId : c2153740-256d-46c0-a57c-b8059325d1a0
EventIdentifier : 1
Sender : System.Management.ManagementEventWatcher
SourceEventArgs : System.Management.EventArrivedEventArgs
SourceArgs : {System.Management.ManagementEventWatcher, System.Management.EventArrivedEventArgs}
SourceIdentifier : ProcessStarted
TimeGenerated : 11/13/2008 12:15:00 PM
MessageData :
Este exemplo mostra como obter eventos usando propriedades diferentes de SourceIdentifier.
O primeiro comando obtém todos os eventos na fila de eventos e os salva na variável $Events
.
O segundo comando usa a notação de matriz para obter o primeiro evento (0-index) na matriz na variável $Events
. O comando usa um operador de pipeline (|
) para enviar o evento para o comando Format-List
, que exibe todas as propriedades do evento em uma lista. Isso permite que você examine as propriedades do objeto de evento.
O terceiro comando mostra como usar o cmdlet Where-Object
para obter um evento com base na hora em que ele foi gerado.
Exemplo 4: Obter um evento por seu identificador
PS C:\> Get-Event -EventIdentifier 2
Esse comando obtém o evento com um identificador de evento de 2.
Parâmetros
-EventIdentifier
Especifica os identificadores de evento para os quais esse cmdlet obtém eventos.
Tipo: | Int32 |
Aliases: | Id |
Cargo: | 0 |
Valor padrão: | None |
Obrigatório: | True |
Aceitar a entrada de pipeline: | True |
Aceitar caracteres curinga: | False |
-SourceIdentifier
Especifica os identificadores de origem para os quais esse cmdlet obtém eventos. O padrão é todos os eventos na fila de eventos. Curingas não são permitidos.
Tipo: | String |
Cargo: | 0 |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | True |
Aceitar caracteres curinga: | False |
Entradas
None
Você não pode redirecionar objetos para este cmdlet.
Saídas
Esse cmdlet retorna um objeto PSEventArgs para cada evento. Para ver uma descrição desse objeto, digite Get-Help Get-Event -Full
e consulte a seção Anotações do tópico de ajuda.
Observações
Nenhuma fonte de evento disponível nas plataformas Linux ou macOS.
Eventos, assinaturas de evento e a fila de eventos existem apenas na sessão atual. Se você fechar a sessão atual, a fila de eventos será descartada e a assinatura do evento será cancelada.
O cmdlet Get-Event
retorna um objeto PSEventArgs (System.Management.Automation.PSEventArgs) com as seguintes propriedades:
ComputerName. O nome do computador no qual o evento ocorreu. Esse valor de propriedade é preenchido somente quando o evento é encaminhado de um computador remoto.
RunspaceId. Um GUID que identifica exclusivamente a sessão na qual o evento ocorreu. Esse valor de propriedade é preenchido somente quando o evento é encaminhado de um computador remoto.
EventIdentifier. Um inteiro (Int32) que identifica exclusivamente a notificação de evento na sessão atual.
Remetente. O objeto que gerou o evento. No valor do parâmetro de Ação
, a variável automática contém o objeto remetente. SourceEventArgs. O primeiro parâmetro que deriva de EventArgs, se existir. Por exemplo, em um evento decorrido de temporizador no qual a assinatura tem o remetente objeto de formulário, Timers.ElapsedEventArgs e, a propriedade SourceEventArgs conteria o Timers.ElapsedEventArgs. No valor do parâmetro
Action, a variável automática contém esse valor. SourceArgs. Todos os parâmetros da assinatura de evento original. Para uma assinatura de evento padrão,
$Args[0]
representa o remetente e$Args[1]
representa o SourceEventArgs. No valor do parâmetroAction, a variável automática contém esse valor. SourceIdentifier. Uma cadeia de caracteres que identifica a assinatura do evento. No valor do parâmetro Action, a propriedade SourceIdentifier da variável automática
$Event
contém esse valor.TimeGenerated. Um objeto DateTime que representa a hora em que o evento foi gerado. No valor do parâmetro
Action, a propriedade TimeGenerated da variável automática contém esse valor. MessageData. Dados associados à assinatura do evento. Os usuários especificam esses dados quando registram um evento. No valor do parâmetro Action, a propriedade MessageData da variável automática
$Event
contém esse valor.