通过 nxlog 将 .log 文件转发到 Graylog2 VM 服务器
Forward .log file via nxlog to Graylog2 VM server
我正处于尝试使用 Graylog2 的阶段。我的目标是通过 graylog2 网页查看应用程序日志。
该应用程序托管在 windows 服务器上,日志文件为 ABC.log。
nxlog 服务配置了多行 header 以强制异常消息进入单个日志条目。输出是标准的 GELF_UDP.
问题是我只能从 Graylog2 网页看到每个日志条目的开头,每个日志事件的开头是 30-50 个字符。
所以我为 nxlog 配置了第二条路由,以便在发送到 Graylog2 VM 服务器之前在本地检查输出。它显示了差异:
本地文件:
10:12:25.835: public class WebClient private void ExecuteClient() 已接受用户登录:ABC 正常事件
Graylog2 网页:
10:12:25.835: public class WebClient private void ExecuteClient(
发送到服务器的日志在 30-50 个字符后丢失。我查了好几天都没有线索。
感谢您的帮助!
GELF 有这种短消息与完整消息的概念,有点尴尬。
这应该可以解决它:
Exec $ShortMessage = $raw_event;
我正处于尝试使用 Graylog2 的阶段。我的目标是通过 graylog2 网页查看应用程序日志。 该应用程序托管在 windows 服务器上,日志文件为 ABC.log。 nxlog 服务配置了多行 header 以强制异常消息进入单个日志条目。输出是标准的 GELF_UDP.
问题是我只能从 Graylog2 网页看到每个日志条目的开头,每个日志事件的开头是 30-50 个字符。
所以我为 nxlog 配置了第二条路由,以便在发送到 Graylog2 VM 服务器之前在本地检查输出。它显示了差异:
本地文件: 10:12:25.835: public class WebClient private void ExecuteClient() 已接受用户登录:ABC 正常事件
Graylog2 网页: 10:12:25.835: public class WebClient private void ExecuteClient(
发送到服务器的日志在 30-50 个字符后丢失。我查了好几天都没有线索。
感谢您的帮助!
GELF 有这种短消息与完整消息的概念,有点尴尬。 这应该可以解决它:
Exec $ShortMessage = $raw_event;