Windows 转发事件日期过滤器不起作用

Windows 转发事件日期过滤器不起作用

我有一台配置为接收来自大量客户端 (Windows 7\8.1) 的转发事件的 Windows Server 2008 R2。它从 WLAN-Autoconfig 源接收事件 ID 范围为 8000-8006 的事件(服务器没有源,但可以将其添加到订阅中以便能够从该源接收)。

服务器安装的是美式英语,区域设置\文化为挪威语。客户端安装的是 NB-no 挪威语,区域设置\文化为挪威语。

我遇到的第一个问题是服务器无法正确读取事件。它给出了以下错误:

无法找到来自源 Microsoft-Windows-WLAN-AutoConfig 的事件 ID 8000 的描述。引发此事件的组件未安装在您的本地计算机上,或者安装已损坏。您可以在本地计算机上安装或修复该组件。

如果事件源自另一台计算机,则显示信息必须与事件一起保存。

这不是一个大问题,因为活动对象和内容仍然到达并且可以用于收集它的目的。

但是后来,当我尝试编写 Powershell 脚本来获取和过滤这些事件时,我遇到了一些问题。

首先我尝试了这个方法:

Get-WinEvent -ComputerName $ServerName -FilterHashtable @{logname = 'ForwardedEvents'; id = 8000, 8001, 8002, 8003; StartTime = $StartDate; EndTime = $EndDate } -MaxEvents 3

但此查询未返回任何值。出于某种原因,从过滤器中删除“StartTime”和“EndTime”使其工作正常。确信“-FilterHashTable”选项不起作用,我尝试使用“-FilterXML”选项,但为此我必须在事件日志中创建过滤器以查找语法。

我登录到服务器,打开事件查看器,并使用以下选项从 ForwardedEvents-log 创建自定义视图:

日志 = ForwardedEvents

ID = 8000-8003

开始时间 = 某个日期

结束时间 = SomeDateLater

令我惊讶的是,它没有返回任何事件,尽管我可以在事件日志中看到很多应该与该过滤器匹配的事件。

尝试不同的过滤器得到了以下结果:

测试 1

日志:转发事件

ID:8000-8003

StartDate:未填写

EndDate:已填写

结果:获取所有结果(甚至超过结束日期)

测试 2

日志:转发事件

ID:8000-8003

开始日期:已填写

EndDate:未填写

结果:无结果

测试 3

日志:转发事件

ID:所有事件 ID

开始日期:已填写

EndDate:未填写

结果:获取 ID 为 111 的事件(我认为这是新客户的订阅开始通知)

测试 4

日志:转发事件

ID:所有事件 ID

开始日期:已填写

EndDate:已填写

结果:获取 ID 为 111 的事件(我认为这是新客户的订阅开始通知)

我的问题是:

为什么会发生这种情况?我该如何解决?

相关内容