ConsumeWindowsEventLog

文档中心 › 组件索引 › ConsumeWindowsEventLog

ConsumeWindowsEventLog Processor

类型全限定名:cn.org.acal.lynxus.processors.windows.event.log.ConsumeWindowsEventLog

所属 Bundle:cn.org.acal.lynxus:lynxus-windows-event-log-nar:2.11.8

已废弃: LYNXUS-15688: 依赖 Windows 平台特定库,导致使用量少且自初始实现以来维护有限

描述

注册 Windows 事件日志订阅回调以从 Windows 事件接收 FlowFile。可以通过通道和 XPath 进行过滤。

标签

ingesteventwindows

属性

下表中,加粗的属性为必填项;其余为可选项。表格同时标注默认值、是否支持表达式语言,以及是否为敏感属性(值会被加密)。

名称默认值可选值描述
ChannelSystem要侦听的 Windows 事件日志通道。
支持表达式语言:是(仅使用环境/系统变量求值)
XPath Query*用于过滤事件的 XPath 查询。 (有关示例,请参阅 https://msdn.microsoft.com/en-us/library/windows/desktop/dd996910(v=vs.85).aspx。)
支持表达式语言:是(仅使用环境/系统变量求值)
Maximum Buffer Size1048576各个事件日志 XML 被渲染到缓冲区。 这指定允许缓冲区增长到的最大字节数。(限制单个事件 XML 的最大大小。)
最大队列大小1024事件异步接收,必须在处理器触发时作为 FlowFile 输出。此属性指定排队等待转换为 FlowFile 的最大事件数。
Inactive Duration to Reconnect10 mins如果在指定的时间段内没有处理新的事件日志,此处理器将尝试重新连接,以恢复到无法消费任何进一步消息的状态。这种情况可能在 Windows 事件日志服务重新启动或返回 ERROR_EVT_QUERY_RESULT_STALE (15011) 时发生。设置无持续时间(例如 '0 ms')将禁用自动重连。
支持表达式语言:是(仅使用环境/系统变量求值)

关系 (Relationships)

名称描述自动终止
success成功消费事件的关系。否

写入的 FlowFile 属性

名称描述
mime.type将设置 application/xml 的 MIME 类型值。

状态管理

该组件不存储状态。

受限 (Restricted)

该组件不受限。

输入要求

该组件不允许有传入连接。

详细说明

ConsumeWindowsEventLog

说明

该 Processor 用于监听 Windows 事件日志(Event Log)事件。它有一个 success 输出,其中包含事件的 XML 表示。

输出 XML 示例:

<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
    <System>
        <Provider Name="Service Control Manager" Guid="{555908d1-a6d7-4695-8e1e-26931d2012f4}"
                  EventSourceName="Service Control Manager"/>
        <EventID Qualifiers="16384">7036</EventID>
        <Version>0</Version>
        <Level>4</Level>
        <Task>0</Task>
        <Opcode>0</Opcode>
        <Keywords>0x8080000000000000</Keywords>
        <TimeCreated SystemTime="2016-06-10T22:28:53.905233700Z"/>
        <EventRecordID>34153</EventRecordID>
        <Correlation/>
        <Execution ProcessID="684" ThreadID="3504"/>
        <Channel>System</Channel>
        <Computer>WIN-O05CNUCF16M.hdf.local</Computer>
        <Security/>
    </System>
    <EventData>
        <Data Name="param1">Smart Card Device Enumeration Service</Data>
        <Data Name="param2">running</Data>
        <Binary>5300630044006500760069006300650045006E0075006D002F0034000000</Binary>
    </EventData>
</Event>

权限:

你的 Windows 用户必须具有读取指定事件日志的权限。可以通过以下 步骤实现(Windows 2008 及更新版本):

  1. 以你的用户身份打开命令提示符。输入命令: wmic useraccount get name,sid
  2. 记下你想允许读取指定通道的用户或组的 SID
  3. 以管理员身份打开命令提示符,输入命令: wevtutil gl CHANNEL_NAME
  4. 获取以 O:BAG 开头的 channelAccess 属性,复制到文本编辑器中, 并在末尾追加 (A;;0x1;;;YOUR_SID_FROM_BEFORE)
  5. 在管理员提示符中运行以下命令(示例见下文): wevtutil sl CHANNEL_NAME /ca:TEXT_FROM_PREVIOUS_STEP

以下命令是我用来给我的用户添加安全日志读取权限的确切命令。 (可以用 wevtutil el 查看所有可能的通道):

wevtutil sl Security /ca:O:BAG:SYD:(A;;0xf0005;;;SY)(A;;0x5;;;BA)(A;;0x1;;;S-1-5-32-573)(A;;0x1;;;S-1-5-21-3589080292-3448680409-2446571098-1001)

这些步骤改编自 这篇指南。