Get-Event
Ottiene gli eventi nella coda degli eventi.
Sintassi
Get-Event
[[-SourceIdentifier] <String>]
[<CommonParameters>]
Get-Event
[-EventIdentifier] <Int32>
[<CommonParameters>]
Descrizione
Il Get-Event
cmdlet ottiene gli eventi nella coda di eventi di PowerShell per la sessione corrente. È possibile ottenere tutti gli eventi o usare il parametro EventIdentifier o SourceIdentifier per specificare gli eventi.
Quando si verifica un evento, viene aggiunto alla coda degli eventi. La coda di eventi include gli eventi per i quali sono stati registrati, gli eventi creati usando il New-Event
cmdlet e l'evento generato al termine di PowerShell. È possibile usare Get-Event
o Wait-Event
per ottenere gli eventi.
Questo cmdlet non riceve gli eventi dai registri del Visualizzatore eventi. Per ottenere tali eventi, usare Get-WinEvent
o Get-EventLog
.
Esempio
Esempio 1: Ottenere tutti gli eventi
PS C:\> Get-Event
Questo comando ottiene tutti gli eventi dalla coda degli eventi.
Esempio 2: Ottenere eventi in base all'identificatore di origine
PS C:\> Get-Event -SourceIdentifier "PowerShell.ProcessCreated"
Questo comando ottiene gli eventi in cui il valore della proprietà SourceIdentifier è PowerShell.ProcessCreated.
Esempio 3: Ottenere un evento in base al momento in cui è stato generato
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 :
Questo esempio illustra come ottenere eventi usando proprietà diverse da SourceIdentifier.
Il primo comando ottiene tutti gli eventi nella coda eventi e li salva nella $Events
variabile .
Il secondo comando usa la notazione della matrice per ottenere il primo evento (indice 0) nella matrice nella $Events
variabile . Il comando usa un operatore pipeline (|
) per inviare l'evento al Format-List
comando , che visualizza tutte le proprietà dell'evento in un elenco. Ciò consente di esaminare le proprietà dell'oggetto evento.
Il terzo comando mostra come usare il Where-Object
cmdlet per ottenere un evento in base al tempo in cui è stato generato.
Esempio 4: Ottenere un evento in base al relativo identificatore
PS C:\> Get-Event -EventIdentifier 2
Questo comando ottiene l'evento con un identificatore di evento di 2.
Parametri
-EventIdentifier
Specifica gli identificatori di evento per i quali questo cmdlet ottiene gli eventi.
Tipo: | Int32 |
Alias: | Id |
Posizione: | 0 |
Valore predefinito: | None |
Necessario: | True |
Accettare l'input della pipeline: | True |
Accettare caratteri jolly: | False |
-SourceIdentifier
Specifica gli identificatori di origine per i quali questo cmdlet ottiene gli eventi. L'opzione predefinita è tutti gli eventi nella coda degli eventi. I caratteri jolly non sono consentiti.
Tipo: | String |
Posizione: | 0 |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | True |
Accettare caratteri jolly: | False |
Input
None
Non è possibile inviare tramite pipe oggetti a questo cmdlet.
Output
Questo cmdlet restituisce un oggetto PSEventArgs per ogni evento. Per visualizzare una descrizione di questo oggetto, digitare Get-Help Get-Event -Full
e vedere la sezione Note dell'argomento della Guida.
Note
Gli eventi, le sottoscrizioni di eventi e la coda degli eventi esistono solo nella sessione corrente. Se si chiude la sessione corrente, la coda degli eventi viene rimossa e la sottoscrizione dell'evento viene annullata.
Il Get-Event
cmdlet restituisce un oggetto PSEventArgs (System.Management.Automation.PSEventArgs) con le proprietà seguenti:
ComputerName. nome del computer in cui si è verificato l'evento. Questo valore di proprietà viene popolato solo quando l'evento viene inoltrato da un computer remoto.
RunspaceId. GUID che identifica in modo univoco la sessione in cui si è verificato l'evento. Questo valore di proprietà viene popolato solo quando l'evento viene inoltrato da un computer remoto.
EventIdentifier. intero (Int32) che identifica in modo univoco la notifica degli eventi nella sessione corrente.
Mittente. oggetto che ha generato l'evento. Nel valore del parametro Action la
$Sender
variabile automatica contiene l'oggetto sender.SourceEventArgs. primo parametro che deriva da EventArgs, se esistente. Ad esempio, in un evento timer trascorso in cui la firma contiene il mittente dell'oggetto del modulo, Timers.ElapsedEventArgs e, la proprietà SourceEventArgs conterrà timers.ElapsedEventArgs. Nel valore del parametro Action la
$EventArgs
variabile automatica contiene questo valore.SourceArgs. tutti i parametri della firma dell'evento originale. Per una firma di evento standard,
$Args[0]
rappresenta il mittente e$Args[1]
rappresenta SourceEventArgs. Nel valore del parametro Action la$Args
variabile automatica contiene questo valore.SourceIdentifier. stringa che identifica la sottoscrizione dell'evento. Nel valore del parametro Action la proprietà SourceIdentifier della
$Event
variabile automatica contiene questo valore.TimeGenerated. Oggetto DateTime che rappresenta l'ora in cui è stato generato l'evento. Nel valore del parametro Action la proprietà TimeGenerated della
$Event
variabile automatica contiene questo valore.MessageData. dati associati alla sottoscrizione di eventi. Gli utenti specificano questi dati quando registrano un evento. Nel valore del parametro Action la proprietà MessageData della
$Event
variabile automatica contiene questo valore.