Get-Event

Obtiene los eventos de la cola de eventos.

Syntax

Get-Event
   [[-SourceIdentifier] <String>]
   [<CommonParameters>]
Get-Event
   [-EventIdentifier] <Int32>
   [<CommonParameters>]

Description

El Get-Event cmdlet obtiene eventos en la cola de eventos de PowerShell para la sesión actual. Puede obtener todos los eventos o usar el parámetro EventIdentifier o SourceIdentifier para especificar los eventos.

Cuando se produce un evento, se agrega a la cola de eventos. La cola de eventos incluye eventos para los que se ha registrado, los eventos creados mediante el New-Event cmdlet y el evento que se genera cuando se cierra PowerShell. Puede usar Get-Event o Wait-Event para obtener los eventos.

Este cmdlet no obtiene eventos de los registros del Visor de eventos. Para obtener esos eventos, use Get-WinEvent o Get-EventLog.

Ejemplos

Ejemplo 1: Obtener todos los eventos

PS C:\> Get-Event

Este comando obtiene todos los eventos de la cola de eventos.

Ejemplo 2: Obtención de eventos por identificador de origen

PS C:\> Get-Event -SourceIdentifier "PowerShell.ProcessCreated"

Este comando obtiene eventos en los que el valor de la propiedad SourceIdentifier es PowerShell.ProcessCreated.

Ejemplo 3: Obtener un evento en función de la hora en que se generó

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      :

En este ejemplo se muestra cómo obtener eventos mediante propiedades que no sean SourceIdentifier.

El primer comando obtiene todos los eventos de la cola de eventos y los guarda en la $Events variable .

El segundo comando usa la notación de matriz para obtener el primer evento (0-index) de la matriz de la $Events variable. El comando usa un operador de canalización (|) para enviar el evento al Format-List comando , que muestra todas las propiedades del evento en una lista. Esto le permite examinar las propiedades del objeto de evento.

El tercer comando muestra cómo usar el Where-Object cmdlet para obtener un evento en función del tiempo que se generó.

Ejemplo 4: Obtener un evento por su identificador

PS C:\> Get-Event -EventIdentifier 2

Este comando obtiene el evento con un identificador de evento de 2.

Parámetros

-EventIdentifier

Especifica los identificadores de evento para los que este cmdlet obtiene eventos.

Type:Int32
Aliases:Id
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-SourceIdentifier

Especifica los identificadores de origen para los que este cmdlet obtiene eventos. El valor predeterminado es todos los eventos de la cola de eventos. No se permiten caracteres comodín.

Type:String
Position:0
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

Entradas

None

No se pueden canalizar objetos a este cmdlet.

Salidas

PSEventArgs

Este cmdlet devuelve un objeto PSEventArgs para cada evento. Para ver una descripción de este objeto, escriba Get-Help Get-Event -Full y vea la sección Notas del tema de ayuda.

Notas

No hay orígenes de eventos disponibles en las plataformas Linux o macOS.

La cola de eventos, las suscripciones de eventos y los eventos solo existen en la sesión actual. Si la cierra, la cola de eventos se descartará y la suscripción al evento se cancelará.

El Get-Event cmdlet devuelve un objeto PSEventArgs (System.Management.Automation.PSEventArgs) con las siguientes propiedades:

  • Nombredeequipo. nombre del equipo en el que se produjo el evento. El valor de esta propiedad solo se rellena cuando el evento se reenvía desde un equipo remoto.

  • RunspaceId. GUID que identifica de forma única la sesión en la que se produjo el evento. El valor de esta propiedad solo se rellena cuando el evento se reenvía desde un equipo remoto.

  • EventIdentifier. entero (Int32) que identifica de forma única la notificación de eventos en la sesión actual.

  • Remitente. objeto que generó el evento. En el valor del parámetro Action , la $Sender variable automática contiene el objeto sender.

  • SourceEventArgs. primer parámetro que se deriva de EventArgs, si existe. Por ejemplo, en un evento de temporizador transcurrido en el que la firma tiene el formulario Object sender, Timers.ElapsedEventArgs e, la propiedad SourceEventArgs contendrá timers.ElapsedEventArgs. En el valor del parámetro Action , la $EventArgs variable automática contiene este valor.

  • SourceArgs. todos los parámetros de la signatura del evento original. Para una firma de evento estándar, $Args[0] representa el remitente y $Args[1] representa SourceEventArgs. En el valor del parámetro Action , la $Args variable automática contiene este valor.

  • SourceIdentifier. cadena que identifica la suscripción de eventos. En el valor del parámetro Action , la propiedad SourceIdentifier de la $Event variable automática contiene este valor.

  • TimeGenerated. Objeto DateTime que representa la hora en la que se generó el evento. En el valor del parámetro Action , la propiedad TimeGenerated de la $Event variable automática contiene este valor.

  • MessageData. datos asociados a la suscripción de eventos. Los usuarios especifican estos datos cuando registran un evento. En el valor del parámetro Action , la propiedad MessageData de la $Event variable automática contiene este valor.