问题标签 [nxlog]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
tomcat - rsyslog 的多行日志问题
我有一个应用程序服务器(Ubuntu 14.04),它上面运行着 tomcat 服务器。此相同的应用程序服务器由“ rsyslog ”服务器组成,该服务器被配置为将日志发送到NXlog服务器(在 Ubuntu 14.04 上)。
rsyslog 服务器将其所有日志(包括 tomcat 错误、异常和堆栈跟踪)发送到 syslog 服务器,但问题在于多行日志。当日志消息存储在文件中或在没有任何封装的情况下通过网络转发时,跨越多行的消息中出现的换行符会混淆简单的基于行的解析器,这些解析器将每一行视为一个单独的事件;&因此我的异常日志换行了。
我的 rsyslog 版本是:7.4.4
rsyslog.conf 文件如下所示:
所以基本上我需要发送 tomcat 堆栈跟踪和异常,以便异常不会分散在多行中。
- 我希望在 rsyslog 端解决这个问题,但也很困惑天气这也可以在 Nxlog 服务器端解决?
任何帮助将不胜感激。
windows - nxlog 和 elasticsearch 解析问题
我正在运行一个 ELK 堆栈并将我的所有 Windows 日志从 nxlog 传递给它,并且我遇到了专门针对 IIS 日志的问题。在 nxlog 中,我在 nxlog.conf 文件中运行它
<Extension w3c>
Module xm_csv
Fields $date, $time, $s-ip, $cs-method, $cs-uri-stem, $cs-uri-query, $s-port, $cs-username, $c-ip, $csUser-Agent, $sc-status, $sc-substatus, $sc-win32-status, $time-taken
FieldTypes string, string, string, string, string, string, string, string, string, string, string, string, string, string
Delimiter ' '
UndefValue -
</Extension>
我没有运行任何解析logstash,当它们出现在elasticsearch / kibana中时,我得到这个巨大的消息输出,
{"message":"2015-10-19 22:17:26 10.10.10.10 GET javascriptScript.js - 443 - 10.10.10.10 Mozilla/4.0+(compatible;+MSIE+7.0;+Windows+NT+6.1;+WOW64;+Trident/7.0;+SLCC2;+.NET+CLR+2.0.50727;+.NET4.0C;+.NET4.0E;+.NET+CLR+3.5.30729;+.NET+CLR+3.0.30729) 200 0 0 31\r","@version":"1","@timestamp":"2015-10-19T22:19:08.061Z","host":"10.10.10.10","type":"WindowsEventLog","tags":["_jsonparsefailure"]}
我希望能够解析此消息,并获取所有相关数据。似乎应该可以通过nxlog解析iis日志,然后将json信息传递给elasticsearch。但我不确定这是否是我应该在 nxlog 端或 logstash 端做的事情。我所看到的一切都使用相同的 w3c 扩展,但是我无法使用 nxlog 和 logstash 来解析 IIS 日志来查看大量数据。
tomcat7 - NXlog 在发送到 Papertrail 时忽略多行 tomcat 堆栈跟踪
我能够从 rsyslog (v-8.13.0) 获取堆栈跟踪 [异常] 到一个普通的 nxlog 服务器,该服务器将日志发送到一个 papertrail 服务器。但是 nxlog 服务器会忽略这些多行日志到 papertrail。我知道 nxlog 中有一个模块(xm_multiline)可以解析它,但不确定如何将它与我当前的 nxlog 配置文件集成:
任何帮助将不胜感激
windows - 在 NXLog 中选择特定级别的 Windows 应用程序日志的问题
我试图通过 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
nxlog - Windows nxlog - 配置文件中的通配符目录
我有以下文件夹结构:
我想log.txt
在上述所有工作文件夹中观看。我目前正在使用:
中nxlog.log
,我得到
我知道它明确表示目录名称不能在https://nxlog.co/docs/en/nxlog-reference-manual.html#im_file_config_file使用通配符
有没有解决的办法?
amazon-web-services - NXLog TCP 模块不工作
我正在尝试使用 NXLog 将日志从一台计算机上的文件转发到另一台计算机上的文件。我是 NXLog 的新手,但在查阅文档后感觉我现在已经掌握了它。下面是我的配置文件,首先是“从”计算机,然后是“到”计算机。但是,它似乎不起作用。
我认为问题在于以下一项或多项:
- NXLog 配置文件
- AWS Windows ec2 box ip/port 设置
- 网络设置
这是我所做的:
“来自”计算机 NXLog 配置文件:
“到”计算机 NXLog 配置文件:
对于“to”计算机,根据文档,如果未指定 Host,则默认为 localhost。
当我在“来自”计算机上启动 NXLog 服务时,日志如下所示:
然后,当我运行将写入日志的应用程序(这将导致 nxlog 做出反应)时,nxlog 日志如下所示:
当我在“to”计算机上启动 NXLog 时,一切似乎都很好,因为 nxlog 日志文件如下所示:
现在,“to”计算机是 AWS ec2 Windows 机器。我在 nxlog (3389) 中使用的端口是分配给实例的 RDP 端口:
我的想法是,即使 nxlog 日志没有显示错误,该端口也可能会导致问题,因为它可能正在使用中。因此,我尝试打开更多的 tcp 端口(5000-5010),如图所示。但是,当我在 nxlog 配置文件中尝试这些端口(5000-5010)中的任何一个时,我收到此错误:
我有点预料到这一点,因为当我访问 yougetsignal.com 之类的网站时,它仍然说端口 5000-5010 已关闭。所以这可能是一个问题。
我已经尝试调试了好几天,但已经没有选择了。谢谢你的帮助。
nxlog - nxlog 进程根据文件名记录文件
我在 C:\Logs 中有很多日志文件。
我在每个单独的站点文件夹(W3SVCXX,其中 XX 是来自 IIS 的站点 ID)中都有 IIS 日志,但是在同一个 C:\Logs\ 文件夹中,我还有来自这些相同网站的其他日志文件,但通过 Log4Net 作为运行的应用程序的一部分记录在网站。
我当前的 NXLog 配置:
这目前对于匹配文件名 U_ex* 的 IIS 日志非常有效。
文件夹结构:
等等等等。
现在我可以专门针对 IIS 日志,因为文件名是 u_ex*,但对于我的其他日志文件,它们可以被称为任何东西。
因此,对于我的其他输入,我需要能够针对所有.log 而不是 u_ex .log。
有任何想法吗?
谢谢,
迈克尔
nxlog - NXLog Linux - 处理后删除文件
我在 Linux 服务器(Red Hat Enterprise 6.6 版)上部署 nxlog。我目前正在尝试在 nxlog 完成处理后删除文件。从 nxlog 文档中,我正在使用 file_remove,它不起作用。这是我的配置,在启动 nxlog 时不会引发任何语法错误。如图所示,我使用了每 1 分钟的时间间隔,因为我不知道在处理后删除文件的最佳方法。在调试日志中,我没有看到尝试匹配目录中的文件以进行删除的尝试:
我在 Windows 设置上使用了相同的语法来测试它,它有效;它成功删除了文件。在 Linux 设置中,我也尝试过设置文件名而不是“*.raw”,但这也不起作用。有什么我做错了吗?有谁知道Linux是否有任何限制会阻止它工作?
有谁知道配置 nxlog 以在处理后删除文件的最佳方法,而不是像上面那样设置 1 秒的时间间隔?
提前致谢!
logstash - EventLog来自哪里,为什么会出错?
我将 Windows 事件日志从 nxlog 发送到 logstash。我的 windows 盒子和我的接收服务器是 UTC。
NXlog 似乎正在将 EventTime 添加到它发送的日志中,并且日期时间比 UTC 晚 7 小时。没有解释,我没有设置它,它与我的虚拟机或主机虚拟机的时区都不匹配。
这个 EventTime 是什么?NXLog 是在创建它吗?为什么它有错误的时区或日期?
nxlog - NXLog shipping Windows Events and SeverityValue
I have NXLog shipping windows event logs to my logstash server. However, I'm finding that the original severity level in the windows event log, , is being replaced with "SeverityValue" and "Severity".
And what is the mapping? If Level is 4 for Information, 3 for Warning, 2 for Error and 1 for Critical, what is the NXLog output going to me?
And why does NXLog do this?