如何使用 rsyslog 客户端转发日志

Posted

技术标签:

【中文标题】如何使用 rsyslog 客户端转发日志【英文标题】:How to forward logs using rsyslog client 【发布时间】:2021-01-11 20:54:36 【问题描述】:

我需要将消息从日志文件转发到另一个 IP - 比如说127.0.0.1 514。我如何做到这一点?

我使用了 rsyslog 文档中的this example:

module(load="imfile" PollingInterval="10") #needs to be done just once



# File 2
input(type="imfile"
     File="/path/to/file2"
     Tag="tag2")

以及为其提供以下规则:

*.*      @127.0.0.1:514

但这最终发送了包括日志在内的所有系统日志。

那么如何正确使用规则集、输入块和*.* @127.0.0.1:514 将日志从文件/path/to/file2 发送到127.0.0.1:514

谢谢

【问题讨论】:

【参考方案1】:

在指定输入时,还要说明要应用哪个规则集。规则集外的输入不会被规则集处理。

module(load="imfile")
input(type="imfile" File="/path/to/file2" Tag="tag2" ruleset="remote")
ruleset(name="remote")
 action(type="omfwd" target="127.0.0.1" port="514" protocol="udp")
 # or use legacy syntax:
 # *.*  @127.0.0.1:514

【讨论】:

以上是关于如何使用 rsyslog 客户端转发日志的主要内容,如果未能解决你的问题,请参考以下文章

Centos 7.x rsyslog服务器端与客户端配置进行日志转发与接收

Centos 7.x rsyslog服务器端与客户端配置进行日志转发与接收

使用rsyslog+loganalzey收集日志显示客户端ip

Filebeat vs Rsyslog 转发日志

rsyslog

rsyslog 系统日志转发