我在论坛上搜索了几个小时,却找不到关于如何使用的具体解释rsyslog
。我真的只需要基础知识。
我有一个日志文件logFile.log
,我想将日志转发到server2
端口514
。我该如何设置rsyslog
才能做到这一点?我将根据需要提供任何额外信息。
答案1
我看到有几个人在研究这个问题,我也知道该怎么做了。所以我会写一篇 rsyslog 的新手指南。
如果您只想将系统日志数据转发到远程服务器:
/etc/rsyslog.d/50-default.conf
将此行添加到(基于协议)的底部:
UDP:*.* @remoteserverIP:PORT #usually port 514
TCP:*.* @@remoteserverIP:PORT #usually port 514
将这些行添加到.conf
您在中创建的文件中/etc/rsyslog.d/
$ModLoad imfile
$InputFileName /var/log/test #change this to desired input
$InputFileTag test #change filetag
$InputFileStateFile stat-test
$InputFileSeverity info #log severity
InputRunFileMonitor
*.* @remoteserverIP:PORT #change to remote server
重启 rsyslog
sudo service rsyslog restart
然后在远程(日志)服务器上,您需要编辑文件/etc/rsyslog.conf
以监听流量。文件顶部将包含以下部分:
# provides UDP syslog reception
#$ModLoad imudp
#$UDPServerRun 514
# provides TCP syslog reception
#$ModLoad imtcp
#$InputTCPServerRun 514
取消注释相应协议的部分。
在文件末尾,您可能希望包含某种过滤模板,以便根据日志的来源将日志解析为文件。以下是示例:
$template FILENAME,"/var/log/%fromhost-ip%/access.log
*.* ?FILENAME
保存文件并重新启动本机上的服务。
希望这对大家都有用!