yum -y install rsyslog
vi /etc/rsyslog.conf
在#### GLOBAL DIRECTIVES ####前添加下面的内容:
-将所有从远程客户端接受到的消息写入到一个以它们的IP地址命名的单个文件中
# Provides UDP syslog reception
$ModLoad imudp
$UDPServerRun 514
# Provides TCP syslog reception
$ModLoad imtcp
$InputTCPServerRun 514
# files mode
$FileCreateMode 0644
$DirCreateMode 0755
$Umask 0022
$EscapeControlCharactersOnReceive off
$template RemoteLogs,"/var/log/devicelog/%FROMHOST-IP%/%PROGRAMNAME%.log"
*.* ?RemoteLogs
& ~
#排除本地主机IP日志记录,只记录远程主机日志
fromhost-ip, !isequal, "127.0.0.1"
?Remote
& ~
#### GLOBAL DIRECTIVES ####
-在本机查看日志
mkdir /var/log/devicelog/
cd /var/log/devicelog/
systemctl restart rsyslog
设置客户端
#vim /etc/rsyslog.conf
#### MODULES ####
# 必须放置到MODULES下
$ModLoad imfile
#### RULES ####
# add local3.none;local4.none 屏蔽写入messages
*.info;mail.none;authpriv.none;cron.none;local3.none;local4.none /var/log/messages
# @ 为UDP, @@ 为tcp
if ($programname contains 'tlog') then @192.168.80.50:514
vim /etc/rsyslog.d/custom.conf
input(type="imfile"
File="/opt/tomcat/tomcat-imscweb/logs/catalina.out"
Tag="tomcat-imscweb-tlog"
Facility="local4"
Severity="notice"
PersistStateInterval="1"
reopenOnTruncate="on"
PollingInterval="1")
重启服务
systemctl restart rsyslog
---简单配置:将所有系统log都放入服务器端下的/var/log/all.log下。
配置:
服务器:
/etc/rsyslog.conf文件最后添加
*.* /var/log/all.log
[root@master ~]# /etc/init.d/rsyslog restart
客户端:
/etc/rsyslog.conf文件最后添加
*.* @@10.1.5.241:514 通过tcp传
systemctl restart rsyslog
测试:
tail -f /var/log/all.log
日志级别:
*debug:包含详细开发的信息,调试程序时使用
*info:正常的系统信息
*notice:不是错误信息,无需处理
*warning:警告信息,不是错误,如磁盘用了85%等
*err:错误,不是非常紧急,尽快修复
*crit:重要情况,如硬盘错误,备用链接丢失
*alert:应该要立即改正的问题,如数据库备破坏
*emerg:紧急情况
常用的日志说明:
/var/log/secure:系统安装日志,文本格式,应周期性分析
/var/log/btmp:当前系统上,用户的失败尝试登录相关的日志信息,二进制格式,lastb命令进行查看
/var/log/wtmp:当前系统上,用户正常登录系统的相关日志信息,二进制格式,last命令可以查看
/var/log/lastlog:每一个用户最近一次的登录信息,二进制格式,lastlog命令可以查看
/var/log/dmesg:系统引导过程中的日志信息,文本格式。可以通过文本查看工具查看,也可以通过专用命令dmesg查看
/var/log/messages :系统中大部分的信息
/var/log/anaconda : anaconda的日志