Dela via


Get-Event

Hämtar händelserna i händelsekön.

Syntax

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

Description

Cmdleten Get-Event hämtar händelser i PowerShell-händelsekön för den aktuella sessionen. Du kan hämta alla händelser eller använda parametern EventIdentifier eller SourceIdentifier för att ange händelserna.

När en händelse inträffar läggs den till i händelsekön. Händelsekön innehåller händelser som du har registrerat, händelser som skapats med hjälp av cmdleten New-Event och händelsen som aktiveras när PowerShell avslutas. Du kan använda Get-Event eller Wait-Event hämta händelserna.

Den här cmdleten hämtar inte händelser från Prikazivač događaja loggarna. Om du vill hämta dessa händelser använder du Get-WinEvent eller Get-EventLog.

Exempel

Exempel 1: Hämta alla händelser

PS C:\> Get-Event

Det här kommandot hämtar alla händelser i händelsekön.

Exempel 2: Hämta händelser efter källidentifierare

PS C:\> Get-Event -SourceIdentifier "PowerShell.ProcessCreated"

Det här kommandot hämtar händelser där värdet för egenskapen SourceIdentifier är PowerShell.ProcessCreated.

Exempel 3: Hämta en händelse baserat på den tid den genererades

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      :

Det här exemplet visar hur du hämtar händelser med andra egenskaper än SourceIdentifier.

Det första kommandot hämtar alla händelser i händelsekön och sparar dem i variabeln $Events .

Det andra kommandot använder matriskommentation för att hämta den första händelsen (0-index) i matrisen i variabeln $Events . Kommandot använder en pipelineoperator (|) för att skicka händelsen till Format-List kommandot, som visar alla egenskaper för händelsen i en lista. På så sätt kan du undersöka egenskaperna för händelseobjektet.

Det tredje kommandot visar hur du använder cmdleten Where-Object för att hämta en händelse baserat på den tid då den genererades.

Exempel 4: Hämta en händelse med dess identifierare

PS C:\> Get-Event -EventIdentifier 2

Det här kommandot hämtar händelsen med en händelseidentifierare på 2.

Parametrar

-EventIdentifier

Anger de händelseidentifierare som den här cmdleten hämtar händelser för.

Typ:Int32
Alias:Id
Position:0
Standardvärde:None
Obligatorisk:True
Godkänn pipeline-indata:True
Godkänn jokertecken:False

-SourceIdentifier

Anger källidentifierare som den här cmdleten hämtar händelser för. Standardvärdet är alla händelser i händelsekön. Jokertecken är inte tillåtna.

Typ:String
Position:0
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:True
Godkänn jokertecken:False

Indata

None

Du kan inte skicka objekt till den här cmdleten.

Utdata

PSEventArgs

Den här cmdleten returnerar ett PSEventArgs-objekt för varje händelse. Om du vill se en beskrivning av det här objektet skriver Get-Help Get-Event -Full du och läser avsnittet Anteckningar i hjälpavsnittet.

Kommentarer

Inga händelsekällor är tillgängliga på Linux- eller macOS-plattformarna.

Händelser, händelseprenumerationer och händelsekön finns bara i den aktuella sessionen. Om du stänger den aktuella sessionen ignoreras händelsekön och händelseprenumerationen avbryts.

Cmdleten Get-Event returnerar ett PSEventArgs-objekt (System.Management.Automation.PSEventArgs) med följande egenskaper:

  • ComputerName. Namnet på den dator där händelsen inträffade. Det här egenskapsvärdet fylls bara i när händelsen vidarebefordras från en fjärrdator.

  • RunspaceId. Ett GUID som unikt identifierar sessionen där händelsen inträffade. Det här egenskapsvärdet fylls bara i när händelsen vidarebefordras från en fjärrdator.

  • EventIdentifier. Ett heltal (Int32) som unikt identifierar händelsemeddelandet i den aktuella sessionen.

  • Avsändare. Objektet som genererade händelsen. I värdet för parametern Åtgärd innehåller den $Sender automatiska variabeln avsändarobjektet.

  • SourceEventArgs. Den första parametern som härleds från EventArgs, om den finns. I en tidsinställd händelse där signaturen till exempel har formatet Object sender, Timers.ElapsedEventArgs e, innehåller egenskapen SourceEventArgs egenskapen Timers.ElapsedEventArgs. I värdet för parametern Åtgärd innehåller den $EventArgs automatiska variabeln det här värdet.

  • SourceArgs. Alla parametrar för den ursprungliga händelsesignaturen. För en standardhändelsesignatur $Args[0] representerar avsändaren och $Args[1] representerar SourceEventArgs. I värdet för parametern Åtgärd innehåller den $Args automatiska variabeln det här värdet.

  • SourceIdentifier. En sträng som identifierar händelseprenumerationen. I värdet för parametern Åtgärd innehåller egenskapen SourceIdentifier för den $Event automatiska variabeln det här värdet.

  • TimeGenerated. Ett DateTime-objekt som representerar tidpunkten då händelsen genererades. I värdet för parametern Åtgärd innehåller egenskapen TimeGenerated för den $Event automatiska variabeln det här värdet.

  • MessageData. Data som är associerade med händelseprenumerationen. Användarna anger dessa data när de registrerar en händelse. I värdet för parametern Åtgärd innehåller egenskapen MessageData för den $Event automatiska variabeln det här värdet.