New-WinEvent
Skapar en ny Windows-händelse för den angivna händelseprovidern.
Syntax
Default (Standard)
New-WinEvent
[-ProviderName] <String>
[-Id] <Int32>
[-Version <Byte>]
[[-Payload] <Object[]>]
[<CommonParameters>]
Description
Den här cmdleten är endast tillgänglig på Windows-plattformen.
Cmdleten New-WinEvent skapar en händelsespårning för Windows (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 används Get-WinEvent 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 Description 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.
Parameteregenskaper
| Typ: | Int32 |
| Standardvärde: | None |
| Stöder jokertecken: | False |
| DontShow: | False |
Parameteruppsättningar
(All)
| Position: | 1 |
| Obligatorisk: | True |
| Värde från pipeline: | False |
| Värde från pipeline efter egenskapsnamn: | False |
| Värde från återstående argument: | 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.
Parameteregenskaper
| Typ: | Object[] |
| Standardvärde: | None |
| Stöder jokertecken: | False |
| DontShow: | False |
Parameteruppsättningar
(All)
| Position: | 2 |
| Obligatorisk: | False |
| Värde från pipeline: | False |
| Värde från pipeline efter egenskapsnamn: | False |
| Värde från återstående argument: | 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.
Parameteregenskaper
| Typ: | String |
| Standardvärde: | None |
| Stöder jokertecken: | False |
| DontShow: | False |
Parameteruppsättningar
(All)
| Position: | 0 |
| Obligatorisk: | True |
| Värde från pipeline: | False |
| Värde från pipeline efter egenskapsnamn: | False |
| Värde från återstående argument: | 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.
Parameteregenskaper
| Typ: | Byte |
| Standardvärde: | None |
| Stöder jokertecken: | False |
| DontShow: | False |
Parameteruppsättningar
(All)
| Position: | Named |
| Obligatorisk: | False |
| Värde från pipeline: | False |
| Värde från pipeline efter egenskapsnamn: | False |
| Värde från återstående argument: | False |
CommonParameters
Den här cmdleten stöder vanliga parametrar: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction och -WarningVariable. Mer information finns i about_CommonParameters.
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.