Freigeben über


Get-Event

Ruft die Ereignisse in der Ereigniswarteschlange ab.

Syntax

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

Beschreibung

Das Cmdlet Get-Event ruft Ereignisse in der PowerShell-Ereigniswarteschlange für die aktuelle Sitzung ab. Sie können alle Ereignisse abrufen oder den EventIdentifier oder SourceIdentifier Parameter verwenden, um die Ereignisse anzugeben.

Wenn ein Ereignis auftritt, wird es der Ereigniswarteschlange hinzugefügt. Die Ereigniswarteschlange enthält Ereignisse, für die Sie registriert haben, Ereignisse, die mit dem Cmdlet New-Event erstellt wurden, und das Ereignis, das beim Beenden von PowerShell ausgelöst wird. Sie können Get-Event oder Wait-Event verwenden, um die Ereignisse abzurufen.

Dieses Cmdlet ruft keine Ereignisse aus den Ereignisanzeigeprotokollen ab. Verwenden Sie zum Abrufen dieser Ereignisse Get-WinEvent oder Get-EventLog.

Beispiele

Beispiel 1: Abrufen aller Ereignisse

PS C:\> Get-Event

Dieser Befehl ruft alle Ereignisse in der Ereigniswarteschlange ab.

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      :

In diesem Beispiel wird gezeigt, 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 befehl Format-List zu senden, der alle Eigenschaften des Ereignisses in einer Liste anzeigt. Auf diese Weise können Sie die Eigenschaften des Ereignisobjekts untersuchen.

Der dritte Befehl zeigt, wie Sie das cmdlet Where-Object verwenden, um ein Ereignis basierend auf dem Zeitpunkt, zu dem es generiert wurde, abzurufen.

Beispiel 4: Abrufen eines Ereignisses anhand des Bezeichners

PS C:\> Get-Event -EventIdentifier 2

Dieser Befehl ruft das Ereignis mit einem Ereignisbezeichner von 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. Der Standardwert ist alle Ereignisse in der Ereigniswarteschlange. Wildcards 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 ein, und lesen Sie den Abschnitt "Notizen" des Hilfethemas.

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 cmdlet Get-Event 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 eindeutig identifiziert, in der das Ereignis aufgetreten ist. 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, sofern vorhanden. In einem verstrichenen Zeitgeberereignis, in dem die Signatur den Absender des Formularobjekts hat, Timers.ElapsedEventArgs e enthält die SourceEventArgs- Eigenschaft die Timers.ElapsedEventArgs. Im Wert des Action-Parameters enthält die $EventArgs automatische Variable diesen Wert.

  • SourceArgs. Alle Parameter der ursprünglichen Ereignissignatur. Bei einer Standardereignissignatur stellt $Args[0] den Absender dar, und $Args[1] stellt die SourceEventArgsdar. Im Wert des Action-Parameters enthält die $Args automatische Variable diesen Wert.

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

  • TimeGenerated. Ein DateTime--Objekt, das die Uhrzeit darstellt, zu der das Ereignis generiert wurde. Im Wert des Action-Parameters enthält die TimeGenerated-Eigenschaft der automatischen Variablen $Event diesen Wert.

  • MessageData. Daten, die dem Ereignisabonnement zugeordnet sind. Benutzer geben diese Daten an, wenn sie ein Ereignis registrieren. Im Wert des Action-Parameters enthält die MessageData-Eigenschaft der automatischen Variablen $Event diesen Wert.