Freigeben über


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 enthält Ereignisse, für die Sie registriert wurden, Ereignisse, die mit dem New-Event Cmdlet erstellt wurden, und das Ereignis, das beim Beenden von PowerShell ausgelöst wird. Sie können die Ereignisse verwenden Get-Event oder Wait-Event abrufen.

Dieses Cmdlet ruft keine Ereignisse aus den Protokollen der Ereignisanzeige ab. Um diese Ereignisse abzurufen, verwenden 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, in denen der Wert der SourceIdentifier-Eigenschaft "PowerShell.ProcessCreated" lautet.

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 mithilfe des Where-Object Cmdlets ein Ereignis basierend auf dem Zeitpunkt abrufen, 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.

Typ:Int32
Aliase:Id
Position:0
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren: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.

Typ:String
Position:0
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

Eingaben

None

Sie können keine Objekte an dieses Cmdlet weiterleiten.

Ausgaben

PSEventArgs

Dieses Cmdlet gibt ein PSEventArgs-Objekt für jedes Ereignis zurück. Wenn Sie eine Beschreibung dieses Objekts anzeigen möchten, geben Sie Get-Help Get-Event -Full den Abschnitt "Notizen" des Hilfethemas ein.

Hinweise

Auf den 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 Aktionsparameters enthält die $Sender automatische Variable das Absenderobjekt.

  • SourceEventArgs. Der erste Parameter, der von EventArgs abgeleitet wird, falls vorhanden. Beispielsweise enthält die SourceEventArgs-Eigenschaft in einem Zeitgeberereignis, in dem die Signatur den Absender des Formulars Object, Timers.ElapsedEventArgs e, die SourceEventArgs-Eigenschaft die Timers.ElapsedEventArgs enthält. Im Wert des Aktionsparameters enthält die $EventArgs automatische Variable diesen Wert.

  • SourceArgs. Alle Parameter der ursprünglichen Ereignissignatur. Stellt für eine Standardereignissignatur $Args[0] den Absender dar und $Args[1] stellt " SourceEventArgs" dar. Im Wert des Aktionsparameters enthält die $Args automatische Variable diesen Wert.

  • SourceIdentifier. Eine Zeichenfolge, die das Ereignisabonnement bezeichnet. Im Wert des Aktionsparameters enthält die SourceIdentifier-Eigenschaft der $Event automatischen Variablen diesen Wert.

  • TimeGenerated. Ein DateTime-Objekt , das die Uhrzeit darstellt, zu der das Ereignis generiert wurde. Im Wert des Aktionsparameters 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 Aktionsparameters enthält die MessageData-Eigenschaft der $Event automatischen Variablen diesen Wert.