New-WinEvent
Belirtilen olay sağlayıcısı için yeni bir Windows olayı oluşturur.
Sözdizimi
New-WinEvent
[-ProviderName] <String>
[-Id] <Int32>
[-Version <Byte>]
[[-Payload] <Object[]>]
[<CommonParameters>]
Description
Bu cmdlet yalnızca Windows platformunda kullanılabilir.
New-WinEvent
cmdlet'i, bir olay sağlayıcısı için Windows için Olay İzleme (ETW) olayı oluşturur.
PowerShell'den ETW kanallarına olay eklemek için bu cmdlet'i kullanabilirsiniz.
Örnekler
Örnek 1 - Yeni olay oluşturma
New-WinEvent -ProviderName Microsoft-Windows-PowerShell -Id 45090 -Payload @("Workflow", "Running")
Bu komut, Microsoft-Windows-PowerShell sağlayıcısı için olay 45090 oluşturmak üzere New-WinEvent
cmdlet'ini kullanır.
Örnek 2 - Bir olayın şablonunu alma
Bu örnekte Get-WinEvent
, Grup İlkesi olay sağlayıcısından olay kimliği 8007 şablonunu almak için kullanılır. Olayın iki biçimi olduğuna dikkat edin.
Sürüm 0'da IsMachine alanı boole değeridir. Sürüm 1'de IsMachine alanı işaretsiz bir tamsayı değeridir.
(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.
Açıklama özelliği, olay günlüğüne yazılan iletiyi içerir.
%3
ve %1
değeri, şablona geçirilen değerlerin yer tutucularıdır.
%3
dizesi, PrincipalSamName alanına geçirilen değerle değiştirilir.
%1
dizesi, PolicyElaspedTimeInSeconds alanına geçirilen değerle değiştirilir.
Örnek 3 - Sürümlenmiş şablon kullanarak yeni olay oluşturma
Bu örnekte, belirli bir şablon sürümünü kullanarak bir olayın nasıl oluşturulacağı gösterilmektedir.
$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
Yükteki değerler şablondaki türlerle eşleşmiyorsa olay günlüğe kaydedilir ancak yük bir hata içerir.
Parametreler
-Id
Olay sağlayıcısında kayıtlı bir olay kimliği belirtir.
Tür: | Int32 |
Position: | 1 |
Default value: | None |
Gerekli: | True |
İşlem hattı girişini kabul et: | False |
Joker karakterleri kabul et: | False |
-Payload
Yük, olay şablonuna konumsal bağımsız değişken olarak geçirilen bir değer dizisidir. Değerler, olayın iletisini oluşturmak için şablona eklenir. Olaylar, farklı biçimler kullanan birden çok şablon sürümüne sahip olabilir.
Yükteki değerler şablondaki türlerle eşleşmiyorsa olay günlüğe kaydedilir ancak yük bir hata içerir.
Tür: | Object[] |
Position: | 2 |
Default value: | None |
Gerekli: | False |
İşlem hattı girişini kabul et: | False |
Joker karakterleri kabul et: | False |
-ProviderName
Olayı "Microsoft-Windows-PowerShell" gibi bir olay günlüğüne yazan olay sağlayıcısını belirtir. ETW olay sağlayıcısı, ETW oturumlarına olay yazan mantıksal bir varlıktır.
Tür: | String |
Position: | 0 |
Default value: | None |
Gerekli: | True |
İşlem hattı girişini kabul et: | False |
Joker karakterleri kabul et: | False |
-Version
Olayın sürüm numarasını belirtir. PowerShell, sayıyı gerekli Bayt türüne dönüştürür. değeri, aynı olayın farklı sürümleri tanımlandığında olayın sürümünü belirtir.
Tür: | Byte |
Position: | Named |
Default value: | None |
Gerekli: | False |
İşlem hattı girişini kabul et: | False |
Joker karakterleri kabul et: | False |
Girişler
None
Nesneleri bu cmdlet'e yöneltemezsiniz.
Çıkışlar
None
Bu cmdlet çıkış döndürmez.
Notlar
Sağlayıcı olayı bir olay günlüğüne yazdıktan sonra, olayı olay günlüğünden almak için Get-WinEvent
cmdlet'ini kullanabilirsiniz.
İlişkili Bağlantılar
PowerShell