New-WinEvent
Skapar en ny Windows-händelse för den angivna händelseprovidern.
Syntax
New-WinEvent
[-ProviderName] <String>
[-Id] <Int32>
[-Version <Byte>]
[[-Payload] <Object[]>]
[<CommonParameters>]
Description
Cmdleten New-WinEvent
skapar en händelsespårning för Windows -händelse (ETW) för en händelseprovider.
Du kan använda den här cmdleten för att lägga till händelser i ETW-kanaler från PowerShell.
Exempel
Exempel 1 – Skapa en ny händelse
New-WinEvent -ProviderName Microsoft-Windows-PowerShell -Id 45090 -Payload @("Workflow", "Running")
Det här kommandot använder cmdleten New-WinEvent
för att skapa händelse 45090 för Microsoft-Windows-PowerShell-providern.
Exempel 2 – Hämta mallen för en händelse
I det här exemplet Get-WinEvent
används för att hämta mallen för händelse-ID 8007 från händelseprovidern grupprincip. Observera att händelsen har två format.
I version 0 är fältet IsMachine ett booleskt värde. I version 1 är fältet IsMachine ett osignerat heltalsvärde.
(Get-WinEvent -ListProvider Microsoft-Windows-GroupPolicy).Events | Where-Object Id -eq 8007
Id : 8007
Version : 0
LogLink : System.Diagnostics.Eventing.Reader.EventLogLink
Level : System.Diagnostics.Eventing.Reader.EventLevel
Opcode : System.Diagnostics.Eventing.Reader.EventOpcode
Task : System.Diagnostics.Eventing.Reader.EventTask
Keywords : {}
Template : <template xmlns="http://schemas.microsoft.com/win/2004/08/events">
<data name="PolicyElaspedTimeInSeconds" inType="win:UInt32" outType="xs:unsignedInt"/>
<data name="ErrorCode" inType="win:UInt32" outType="win:HexInt32"/>
<data name="PrincipalSamName" inType="win:UnicodeString" outType="xs:string"/>
<data name="IsMachine" inType="win:Boolean" outType="xs:boolean"/>
<data name="IsConnectivityFailure" inType="win:Boolean" outType="xs:boolean"/>
</template>
Description : Completed periodic policy processing for user %3 in %1 seconds.
Id : 8007
Version : 1
LogLink : System.Diagnostics.Eventing.Reader.EventLogLink
Level : System.Diagnostics.Eventing.Reader.EventLevel
Opcode : System.Diagnostics.Eventing.Reader.EventOpcode
Task : System.Diagnostics.Eventing.Reader.EventTask
Keywords : {}
Template : <template xmlns="http://schemas.microsoft.com/win/2004/08/events">
<data name="PolicyElaspedTimeInSeconds" inType="win:UInt32" outType="xs:unsignedInt"/>
<data name="ErrorCode" inType="win:UInt32" outType="win:HexInt32"/>
<data name="PrincipalSamName" inType="win:UnicodeString" outType="xs:string"/>
<data name="IsMachine" inType="win:UInt32" outType="xs:unsignedInt"/>
<data name="IsConnectivityFailure" inType="win:Boolean" outType="xs:boolean"/>
</template>
Description : Completed periodic policy processing for user %3 in %1 seconds.
Egenskapen Beskrivning innehåller meddelandet som skrivs till händelseloggen. Värdet %3
och %1
är platshållare för de värden som skickas till mallen. Strängen %3
ersätts med värdet som skickas till fältet PrincipalSamName . Strängen %1
ersätts med värdet som skickas till fältet PolicyElaspedTimeInSeconds .
Exempel 3 – Skapa en ny händelse med en versionsmall
Det här exemplet visar hur du skapar en händelse med en viss mallversion.
$Payload = @(300, [uint32]'0x8001011f', $env:USERNAME, 0, 1)
New-WinEvent -ProviderName Microsoft-Windows-GroupPolicy -Id 8007 -Version 1 -Payload $Payload
Get-winEvent -ProviderName Microsoft-Windows-GroupPolicy -MaxEvents 1
ProviderName: Microsoft-Windows-GroupPolicy
TimeCreated Id LevelDisplayName Message
----------- -- ---------------- -------
5/4/2022 8:40:24 AM 8007 Information Completed periodic policy processing for user User1 in 300 seconds
Om värdena i nyttolasten inte matchar typerna i mallen loggas händelsen men nyttolasten innehåller ett fel.
Parametrar
-Id
Anger ett händelse-ID som är registrerat i händelseprovidern.
Typ: | Int32 |
Position: | 2 |
Standardvärde: | None |
Obligatorisk: | True |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
-Payload
Nyttolasten är en matris med värden som skickas som positionsargument till händelsemallen. Värdena infogas i mallen för att skapa meddelandet för händelsen. Händelser kan ha flera mallversioner som använder olika format.
Om värdena i nyttolasten inte matchar typerna i mallen loggas händelsen men nyttolasten innehåller ett fel.
Typ: | Object[] |
Position: | 3 |
Standardvärde: | None |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
-ProviderName
Anger händelseprovidern som skriver händelsen till en händelselogg, till exempel "Microsoft-Windows-PowerShell". En ETW-händelseprovider är en logisk entitet som skriver händelser till ETW-sessioner.
Typ: | String |
Position: | 1 |
Standardvärde: | None |
Obligatorisk: | True |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
-Version
Anger versionsnumret för händelsen. PowerShell konverterar talet till den bytetyp som krävs. Värdet anger versionen av händelsen när olika versioner av samma händelse definieras.
Typ: | Byte |
Position: | Named |
Standardvärde: | None |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
Indata
None
Du kan inte skicka objekt till den här cmdleten.
Utdata
None
Den här cmdleten returnerar inga utdata.
Kommentarer
När providern har skrivit händelsen till en händelselogg kan du använda cmdleten Get-WinEvent
för att hämta händelsen från händelseloggen.