> CentOS > CentOS服务器 > 文件同步 >

centos搭建rsyslog日志服务器

系统是centos 6.5 x64

服务器端
yum install -y rsyslog
mkdir /data/log

vi /etc/sysconfig/rsyslog
#SYSLOGD_OPTIONS="-c 5"
#r表示允许接收,x表示不需要DNS解析,m表示立即同步 0表示关闭
SYSLOGD_OPTIONS="-r -x -m 0"

cp /etc/rsyslog.conf /etc/rsyslog.conf.bak
vim /etc/rsyslog.conf

10 $ModLoad immark #immark是模块名,支持日志标记
13 $ModLoad imudp #imupd是模块名,支持udp协议
14 $UDPServerRun 514 #允许514端口接收使用UDP和TCP协议转发过来的日志
24 #$ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat #默认日志模板,默认发送主机名,如果需要发送IP,添加下面2行。
25 $template myFormat,"%timestamp% %fromhost-ip%%msg%\n"
26 $ActionFileDefaultTemplate myFormat

44 #*.info;mail.none;authpriv.none;cron.none                /var/log/messages
45 *.info;mail.none;authpriv.none;cron.none                /data/log/messages #自定义存储路径

重启rsyslog
/etc/init.d/rsyslog restart
查看端口是否启动
netstat -napulu | grep 514
udp        0      0 0.0.0.0:514                 0.0.0.0:*                               8757/rsyslogd


客户端
yum install -y rsyslog
vim /etc/rsyslog.conf

24 #$ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat
25 $template myFormat,"%timestamp% %fromhost-ip%%msg%\n"
26 $ActionFileDefaultTemplate myFormat
45 *.info;mail.none;authpriv.none;cron.none                @10.169.13.219 #发送到日志服务器

重启rsyslog
/etc/init.d/rsyslog restart

服务端跟踪日志
tail -f /data/log/messages

客户端测试重启nrpe
killall -9 nrpe
/usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d
/usr/local/nagios/libexec/check_nrpe -H localhost


服务器查看有日志过来了

May 14 15:37:25 10.168.23.232 Starting up daemon
May 14 15:37:25 10.168.23.232 Listening for connections on port 5666
May 14 15:37:25 10.168.23.232 Allowing connections from: 10.252.119.80,127.0.0.1


服务器和客户端加入开机启动项
echo "/etc/init.d/rsyslog start" >> /etc/rc.local

如果服务器查看的日志格式不符合,可以自己定义格式
在服务器端修改vim /etc/rsyslog.conf

比如
$template myFormat, "%fromhost-ip%^^^^^%msg%\n"
然后引用
local4.*                                                -/data/log/messages;myFormat

重启rsyslog就可以了
(责任编辑:IT)