我一直在寻找这个“Level”意味着运行Get-WinEvent的地方。
例如,
Get-WinEvent –FilterHashtable @{logname=’application’; level=2; starttime=$time; id=20}
level=2
代表什么?
我要问的原因是我正在尝试验证每个日志的严重性,并且level=2
表示与严重性相关的任何内容。
答案 0 :(得分:5)
让我们试着找出:
#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
快速msdn搜索EventLogRecord将我们指向EventLogRecord.Level Property
获取事件的级别。级别表示该级别的严重性 事件。对于级别的名称,获取值的值 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
答案 1 :(得分:0)
有关详细信息,请参阅此链接。 MSDN
实际上你正在寻找一个winmeta.xml文件,但它会为基本值提供这些文件: