Windows Forward 事件缺少用户数据和说明

Windows Forward 事件缺少用户数据和说明

我已将订阅事件设置为将 Windows Server 2008 的终端服务/LocalSessionManager/操作日志转发到另一个 Windows Server 2008 的转发事件部分。

订阅事件的 HeartbeatInterval 值设置为 300(但仍需要 15 分钟左右才能发送)。

然而,一旦日志最终传递到执行事件收集的主 Windows Server 2008,日志中就会缺少信息。

转发事件的常规视图将显示以下内容:

Remote Desktop Services: Session reconnection succeeded:

User: %1
Session ID: %2
Source Network Address: %3

为什么转发时没有填写这些变量?在转发之前,源机器会告诉我用户和其余信息。但转发版本的日志缺少这些信息。

预期显示:

Remote Desktop Services: Session reconnection succeeded:

User: mydomain\myusername
Session ID: 2
Source Network Address: 123.4.5.6

然而,当我查看“详细信息”选项卡时,我看到所有信息都在那里!

- <UserData>
- <EventXML xmlns:auto-ns3="http://schemas.microsoft.com/win/2004/08/events" xmlns="Event_NS">
  <User>mydomain\myusername</User> 
  <SessionID>2</SessionID> 
  <Address>123.4.5.6</Address> 
  </EventXML>
  </UserData>

我已经将此事件输入到 nxlog 中了。

nxlog 输出数据与非转发事件匹配。Nxlog 输出:

{"EventTime":"2014-05-21 12:49:35","Hostname":"myhostname.mywebsite.org","Keywords":1152921504606846976,"EventType":"INFO","SeverityValue":2,"Severity":"INFO","EventID":25,"SourceName":"Microsoft-Windows-TerminalServices-LocalSessionManager","ProviderGuid":"{5D896912-022D-40AA-A3A8-4FA5515C76D7}","Version":0,"Task":0,"OpcodeValue":0,"RecordNumber":89,"ProcessID":532,"ThreadID":3316,"Channel":"Microsoft-Windows-TerminalServices-LocalSessionManager/Operational","Domain":"NT AUTHORITY","AccountName":"SYSTEM","UserID":"SYSTEM","AccountType":"User","Opcode":"Info","EventReceivedTime":1400691838,"SourceModuleName":"eventlog","SourceModuleType":"im_msvistalog"}

一旦 logstash 收到来自 nxlog 的输出,就会发现缺少字段,最重要的是,这些转发的事件中完全缺少包含事件日志常规视图的“消息”字段。“消息”字段仍然存在,但这仅包括 nxlog 输出,其中显然缺少我需要的用户详细信息。

处理非转发事件时,logstash 中会出现“Message”和“message”字段,但转发事件缺少“Message”字段。我该如何修复此问题?

编辑:订阅事件 ContentFormat 设置为事件。

答案1

我相信我有一个解决方案,尽管它并不完美。

在将订阅中的目标日志设置为 TerminalServices-LocalSessionManager/Operational 后,所有数据都按预期完整地开始出现在事件查看器中。没有 %1、%2、%3 之类的废话,所有变量都已填充。

当 nxlog 读取事件日志并且 logstash 读取 nxlog 的输出时,“消息”和“消息”字段也都完好无损。没有数据丢失,我的解析器工作正常。

我不明白,但将目标日志设置为转发事件时存在问题。传输过程中数据不知为何丢失了。

ContentFormat 也被设置回RenderedText。

更新:将其设置为 RenderedText 解决了该问题。默认情况下,转发事件日志的上限为 20 MB,必须增加。另一个问题是订阅包含域计算机,其中包括订阅服务器本身,这导致 Windows 服务器递归转发其日志。

ContentFormat 重新设置为 RenderedText(默认设置)。将目标日志大小增加到 5 GB。将自身排除在订阅之外。

相关内容