Get-Event
Ruft die Ereignisse in der Ereigniswarteschlange ab.
Syntax
Get-Event
[[-SourceIdentifier] <String>]
[<CommonParameters>]
Get-Event
[-EventIdentifier] <Int32>
[<CommonParameters>]
Beschreibung
Das Get-Event
Cmdlet ruft Ereignisse in der PowerShell-Ereigniswarteschlange für die aktuelle Sitzung ab. Sie können alle Ereignisse abrufen oder den Parameter EventIdentifier oder SourceIdentifier verwenden, um die Ereignisse anzugeben.
Wenn ein Ereignis auftritt, wird es zur Ereigniswarteschlange hinzugefügt. Die Ereigniswarteschlange umfasst Ereignisse, für die Sie sich registriert haben, Ereignisse, die mit dem New-Event
Cmdlet erstellt wurden, und das Ereignis, das ausgelöst wird, wenn PowerShell beendet wird. Sie können oder Wait-Event
verwendenGet-Event
, um die Ereignisse abzurufen.
Dieses Cmdlet ruft keine Ereignisse aus den Protokollen der Ereignisanzeige ab. Um diese Ereignisse abzurufen, verwenden Sie Get-WinEvent
oder Get-EventLog
.
Beispiele
Beispiel 1: Abrufen aller Ereignisse
PS C:\> Get-Event
Mit diesem Befehl werden alle Ereignisse in der Ereigniswarteschlange abgerufen.
Beispiel 2: Abrufen von Ereignissen nach Quellbezeichner
PS C:\> Get-Event -SourceIdentifier "PowerShell.ProcessCreated"
Dieser Befehl ruft Ereignisse ab, bei denen der Wert der SourceIdentifier-Eigenschaft PowerShell.ProcessCreated ist.
Beispiel 3: Abrufen eines Ereignisses basierend auf dem Zeitpunkt, zu dem es generiert wurde
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 :
Dieses Beispiel zeigt, wie Ereignisse mithilfe anderer Eigenschaften als „SourceIdentifier“ abgerufen werden.
Der erste Befehl ruft alle Ereignisse in der Ereigniswarteschlange ab und speichert sie in der $Events
Variablen.
Der zweite Befehl verwendet die Arraynotation, um das erste (0-index)-Ereignis im Array in der $Events
Variablen abzurufen. Der Befehl verwendet einen Pipelineoperator (|
), um das Ereignis an den Format-List
Befehl zu senden, der alle Eigenschaften des Ereignisses in einer Liste anzeigt. Dadurch können Sie die Eigenschaften des Ereignisobjekts überprüfen.
Der dritte Befehl zeigt, wie Sie das Where-Object
Cmdlet verwenden, um ein Ereignis basierend auf dem Zeitpunkt zu erhalten, zu dem es generiert wurde.
Beispiel 4: Abrufen eines Ereignisses anhand des Bezeichners
PS C:\> Get-Event -EventIdentifier 2
Dieser Befehl ruft das Ereignis mit der Ereignis-ID 2 ab.
Parameter
-EventIdentifier
Gibt die Ereignisbezeichner an, für die dieses Cmdlet Ereignisse abruft.
Type: | Int32 |
Aliases: | Id |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-SourceIdentifier
Gibt Quellbezeichner an, für die dieses Cmdlet Ereignisse abruft. Standardmäßig werden alle Ereignisse in der Ereigniswarteschlange abgerufen. Platzhalter sind nicht zulässig.
Type: | String |
Position: | 0 |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
Eingaben
None
Sie können keine Objekte an dieses Cmdlet übergeben.
Ausgaben
Dieses Cmdlet gibt für jedes Ereignis ein PSEventArgs-Objekt zurück. Um eine Beschreibung dieses Objekts anzuzeigen, geben Sie Get-Help Get-Event -Full
den Abschnitt Notizen des Hilfethemas ein, und lesen Sie sie.
Hinweise
Auf linux- oder macOS-Plattformen sind keine Ereignisquellen verfügbar.
Ereignisse, Ereignisabonnements und die Ereigniswarteschlange sind nur in der aktuellen Sitzung vorhanden. Wenn Sie die aktuelle Sitzung schließen, wird die Ereigniswarteschlange verworfen, und das Ereignisabonnement wird abgebrochen.
Das Get-Event
Cmdlet gibt ein PSEventArgs-Objekt (System.Management.Automation.PSEventArgs) mit den folgenden Eigenschaften zurück:
Computername. Der Name des Computers, auf dem das Ereignis aufgetreten ist. Dieser Eigenschaftswert wird nur aufgefüllt, wenn das Ereignis von einem Remotecomputer weitergeleitet wird.
RunspaceId. Eine GUID, die die Sitzung, in der das Ereignis aufgetreten ist, eindeutig identifiziert. Dieser Eigenschaftswert wird nur aufgefüllt, wenn das Ereignis von einem Remotecomputer weitergeleitet wird.
EventIdentifier. Eine ganze Zahl (Int32), die die Ereignisbenachrichtigung in der aktuellen Sitzung eindeutig identifiziert.
Absender. Das Objekt, das das Ereignis generiert hat. Im Wert des Action-Parameters enthält die
$Sender
automatische Variable das Absenderobjekt.SourceEventArgs. Der erste Parameter, der von EventArgs abgeleitet wird, falls vorhanden. In einem timer elapsed-Ereignis, in dem die Signatur das Format Object sender, Timers.ElapsedEventArgs e hat, würde die SourceEventArgs-Eigenschaft beispielsweise die Timers.ElapsedEventArgs enthalten. Im Wert des Action-Parameters enthält die
$EventArgs
automatische Variable diesen Wert.SourceArgs. Alle Parameter der ursprünglichen Ereignissignatur. Für eine Standardereignissignatur
$Args[0]
stellt den Absender und$Args[1]
die SourceEventArgs dar. Im Wert des Action-Parameters enthält die$Args
automatische Variable diesen Wert.SourceIdentifier. Eine Zeichenfolge, die das Ereignisabonnement bezeichnet. Im Wert des Action-Parameters enthält die SourceIdentifier-Eigenschaft der
$Event
automatischen Variablen diesen Wert.TimeGenerated. Ein DateTime-Objekt , das die Zeit darstellt, zu der das Ereignis generiert wurde. Im Wert des Action-Parameters enthält die TimeGenerated-Eigenschaft der
$Event
automatischen Variablen diesen Wert.MessageData. Die dem Ereignisabonnement zugeordneten Daten. Benutzer geben diese Daten an, wenn sie ein Ereignis registrieren. Im Wert des Action-Parameters enthält die MessageData-Eigenschaft der
$Event
automatischen Variablen diesen Wert.