この「レベル」が Get-WinEvent の実行を意味することを理解するために、私はあちこちを見てきました。
例えば、
Get-WinEvent –FilterHashtable @{logname=’application’; level=2; starttime=$time; id=20}
ここで何level=2
を表しているのですか?私が尋ねている理由は、各ログの重大度を検証しようとしており、それlevel=2
が重大度に関連するものを表しているからです。
この「レベル」が Get-WinEvent の実行を意味することを理解するために、私はあちこちを見てきました。
例えば、
Get-WinEvent –FilterHashtable @{logname=’application’; level=2; starttime=$time; id=20}
ここで何level=2
を表しているのですか?私が尋ねている理由は、各ログの重大度を検証しようとしており、それlevel=2
が重大度に関連するものを表しているからです。
試して調べてみましょう:
#Get sample object
$t = Get-WinEvent -MaxEvents 1 -FilterHashtable @{ Logname='application'; level=2 }
#Explore properties and type
$t.GetType().Fullname
System.Diagnostics.Eventing.Reader.EventLogRecord
EventLogRecordを msdn-search ですばやく検索すると、EventLogRecord.Level プロパティが表示されます。
イベントのレベルを取得します。レベルは、イベントの重大度を示します。レベルの名前については、LevelDisplayName プロパティの値を取得します
#Check out Level vs LevelDisplayName
$t | Format-Table -Property Level, LevelDisplayName -AutoSize
Level LevelDisplayName
----- ----------------
2 Error
ログをすばやく検索して、いくつかのレベル値をリストします。
Get-WinEvent @{ logname='application' } | Select-Object Level, LevelDisplayName -Unique | Sort-Object Level
Level LevelDisplayName
----- ----------------
0 Information
2 Error
3 Warning
4 Information
また、Level-property ページで、StandardEventLevel
列挙型を使用すると述べているので、その値をリストします。
[enum]::GetValues([System.Diagnostics.Eventing.Reader.StandardEventLevel]) | Select-Object {$_}, {$_.value__ }
$_ $_.value__
-- -----------
LogAlways 0
Critical 1
Error 2
Warning 3
Informational 4
Verbose 5