我正在尝试使用rsyslog RELP将日志文件发送到服务器。客户端上的配置如下:
/etc/rsyslog.d/00-userlog.conf
module(load="imfile" PollingInterval="10")
module(load="omrelp")
input(type="imfile"
File="/home/user/user.log"
escapeLF="on"
Tag="applog"
Severity="info"
Facility="local7")
template(name="app_tem" type="string" string="<%PRI%>%TIMESTAMP% %HOSTNAME% %syslogtag% %msg%")
*.* :omrelp:192.168.1.90:20514;app_tem
以及服务器上的配置:
/etc/rsyslog.conf
module(load="imrelp")
input(type="imrelp" port="20514" maxDataSize="10k")
$template customFormat, "/var/log/remote/%HOSTNAME%/Users/%SYSLOGTAG%.log"
*.* ?;customFormat
使用这种配置,当用户的日志更改时,不会发送日志文件。同样在服务器上的文件中,我得到了几个错误:
input module name 'imrelp' is unknown
parameter 'maxDataSize' not known
parameter 'port' not known
由于我遵循了imrelp和omrelp文档,因此我不知道发生了什么,并且它对我来说效果不佳。我在做什么错了?
谢谢。
编辑: 我不再有“ imrelp”错误,但是我仍然没有收到日志文件...
答案 0 :(得分:1)
取决于服务器系统,默认情况下,imrelp.so
库可能未随rsyslog安装。例如,在debian或fedora上,您可能还需要安装软件包rsyslog-relp
。