New-WinEvent
Vytvoří novou událost systému Windows pro zadaného zprostředkovatele událostí.
Syntax
Default (Výchozí)
New-WinEvent
[-ProviderName] <String>
[-Id] <Int32>
[-Version <Byte>]
[[-Payload] <Object[]>]
[<CommonParameters>]
Description
Tato rutina je dostupná jenom na platformě Windows.
Cmdlet New-WinEvent vytvoří událost Event Tracing for Windows (ETW) pro zprostředkovatele událostí.
Tento cmdlet můžete použít k přidání událostí do kanálů ETW z PowerShellu.
Příklady
Příklad 1 – Vytvoření nové události
New-WinEvent -ProviderName Microsoft-Windows-PowerShell -Id 45090 -Payload @("Workflow", "Running")
Tento příkaz používá rutinu New-WinEvent k vytvoření události 45090 pro zprostředkovatele MicrosoftWindows-PowerShell.
Příklad 2 – Získání šablony pro událost
V tomto příkladu se Get-WinEvent používá k získání šablony pro událost s ID 8007 od poskytovatele událostí pro zásady skupiny. Všimněte si, že událost má dva formáty.
Ve verzi 0 je pole IsMachine logická hodnota. Ve verzi 1 je pole IsMachine celočíselnou hodnotou bez znaménka.
(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.
Vlastnost Popis obsahuje zprávu, která se zapíše do protokolu událostí. Hodnota %3 a %1 jsou zástupné symboly hodnot předaných do šablony. Řetězec %3 se nahradí hodnotou předanou do pole PrincipalSamName. Řetězec %1 se nahradí hodnotou předanou poli PolicyElaspedTimeInSeconds.
Příklad 3 – Vytvoření nové události pomocí verzované šablony
Tento příklad ukazuje, jak vytvořit událost pomocí konkrétní verze šablony.
$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
Pokud hodnoty v datové části neodpovídají typům v šabloně, událost se zaprotokoluje, ale datová část obsahuje chybu.
Parametry
-Id
Určuje ID události zaregistrované ve zprostředkovateli událostí.
Vlastnosti parametru
| Typ: | Int32 |
| Default value: | None |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
(All)
| Position: | 1 |
| Povinné: | True |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-Payload
Užitečné zatížení je pole hodnot předaných jako poziční argumenty do šablony události. Hodnoty se vloží do šablony pro vytvoření zprávy pro událost. Události můžou mít více verzí šablon, které používají různé formáty.
Pokud hodnoty v datové části neodpovídají typům v šabloně, událost se zaprotokoluje, ale datová část obsahuje chybu.
Vlastnosti parametru
| Typ: | Object[] |
| Default value: | None |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
(All)
| Position: | 2 |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-ProviderName
Určuje zprostředkovatele událostí, který zapisuje událost do protokolu událostí, například Microsoft-Windows-PowerShell. Poskytovatel událostí ETW je logická entita, která zapisuje události do relací ETW.
Vlastnosti parametru
| Typ: | String |
| Default value: | None |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
(All)
| Position: | 0 |
| Povinné: | True |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-Version
Určuje číslo verze události. PowerShell převede číslo na požadovaný typ bajtu. Hodnota určuje verzi události, pokud jsou definovány různé verze stejné události.
Vlastnosti parametru
| Typ: | Byte |
| Default value: | None |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
(All)
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
CommonParameters
Tato rutina podporuje běžné parametry: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction a -WarningVariable. Další informace najdete v about_CommonParameters.
Vstupy
None
Do tohoto cmdletu nemůžete předávat objekty.
Výstupy
None
Tento cmdlet nevrátí žádný výstup.
Poznámky
Jakmile zprostředkovatel zapíše událost do protokolu událostí, můžete k získání události z protokolu událostí použít rutinu Get-WinEvent.