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 de la hora en 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
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 formato 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 al 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.