Get-Event
Obtém os eventos na fila de eventos.
Sintaxe
Get-Event
[[-SourceIdentifier] <String>]
[<CommonParameters>]
Get-Event
[-EventIdentifier] <Int32>
[<CommonParameters>]
Description
O Get-Event
cmdlet 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 ocorre um evento, ele é adicionado à fila de eventos. A fila de eventos inclui eventos para os quais você se registrou, eventos criados usando o cmdlet e o evento que é gerado quando o New-Event
PowerShell é encerrado. Você pode usar Get-Event
ou Wait-Event
para obter os eventos.
Esse cmdlet não recebe eventos dos logs do Event Viewer. 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 ele 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 que não sejam SourceIdentifier.
O primeiro comando obtém todos os eventos na fila de eventos e os salva na $Events
variável.
O segundo comando usa a notação de matriz para obter o primeiro evento (0-index) na matriz na $Events
variável. O comando usa um operador de pipeline (|
) para enviar o evento para o Format-List
comando, 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 Where-Object
cmdlet 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 da fila de eventos. Caracteres curinga 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 canalizar objetos para esse 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 Notas 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 inscrição do evento será cancelada.
O Get-Event
cmdlet retorna um objeto PSEventArgs (System.Management.Automation.PSEventArgs) com as seguintes propriedades:
Nome do Computador. 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 eventos na sessão atual.
Remetente. O objeto que gerou o evento. No valor do parâmetro Action , a
$Sender
variável automática contém o objeto remetente.SourceEventArgs. O primeiro parâmetro deriva de EventArgs, se ele existir. Por exemplo, em um evento de temporizador decorrido no qual a assinatura tem o formulário Object sender, Timers.ElapsedEventArgs e, a propriedade SourceEventArgs conteria o Timers.ElapsedEventArgs. No valor do parâmetro Action , a
$EventArgs
variável automática contém esse valor.SourceArgs. Todos os parâmetros da assinatura do evento original. Para uma assinatura de evento padrão,
$Args[0]
representa o remetente e$Args[1]
representa o SourceEventArgs. No valor do parâmetro Action , a$Args
variável automática contém esse valor.SourceIdentifier. Uma cadeia de caracteres que identifica a inscrição do evento. No valor do parâmetro Action , a propriedade SourceIdentifier da
$Event
variável automática 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
$Event
variável automática contém esse valor.MessageData. Dados associados a inscrição do evento. Os usuários especificam esses dados quando registram um evento. No valor do parâmetro Action , a propriedade MessageData da
$Event
variável automática contém esse valor.