在 NXLog 中选择特定级别的 windows 应用程序日志时出现问题
Issue selecting specific levels of windows application logs in NXLog
我试图通过 NXLog 仅将警告/错误/关键级别的应用程序日志传递到我的 ELK 堆栈。当我有这个配置时
<Input EventLog_In>
Module im_msvistalog
# this kinda works for me, put * to get everything
Query <QueryList>\
<Query Id="0">\
<Select Path="Application">*</Select>\
</Query>\
</QueryList>
Exec to_json();
</Input>
一切正常,我正在收集所有级别的应用程序日志。我试过在 <Select Path>
行中输入一个参数,像这样
<Select Path="Application">*[Application/Level=1]</Select>\
然后它自己搞砸了,我什么也没得到。 NXLog 没有报告任何问题,我在 logstash 方面也没有看到任何东西。
我从该线程获得了有关事件查看器查询的信息,并将其调整为适合我的用例:
https://serverfault.com/questions/543494/query-specific-logs-from-event-log-using-nxlog
想通了。显然,错误级别的参考不是应用程序,而是系统。我的查询现在看起来像这样并且可以完美运行
<Select Path="Application">*[System[(Level=1 or Level=2 or Level=3)]]</Select>\
我正在使用 Windows Server 2008 R2,fwiw。
我试图通过 NXLog 仅将警告/错误/关键级别的应用程序日志传递到我的 ELK 堆栈。当我有这个配置时
<Input EventLog_In>
Module im_msvistalog
# this kinda works for me, put * to get everything
Query <QueryList>\
<Query Id="0">\
<Select Path="Application">*</Select>\
</Query>\
</QueryList>
Exec to_json();
</Input>
一切正常,我正在收集所有级别的应用程序日志。我试过在 <Select Path>
行中输入一个参数,像这样
<Select Path="Application">*[Application/Level=1]</Select>\
然后它自己搞砸了,我什么也没得到。 NXLog 没有报告任何问题,我在 logstash 方面也没有看到任何东西。
我从该线程获得了有关事件查看器查询的信息,并将其调整为适合我的用例: https://serverfault.com/questions/543494/query-specific-logs-from-event-log-using-nxlog
想通了。显然,错误级别的参考不是应用程序,而是系统。我的查询现在看起来像这样并且可以完美运行
<Select Path="Application">*[System[(Level=1 or Level=2 or Level=3)]]</Select>\
我正在使用 Windows Server 2008 R2,fwiw。