rsyslog配置文件说明
加载模块
# /etc/rsyslog.conf
# 本地日志系统模块
$ModLoad imuxsock
# 内核日志系统模块
$ModLoad imklog
# provides --MARK-- message capability
#$ModLoad immark
# 提供UDP日志接收
#$ModLoad imudp
#$UDPServerRun 514
# 提供TCP日志接收
#$ModLoad imtcp
#$InputTCPServerRun 514
全局指令
# 使用传统时间戳格式(注释掉后使用高精度时间戳)
$ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat
# 设置日志文件的默认属性及权限
# 文件属主/群组/权限/目录权限/操作掩码
$FileOwner root
$FileGroup adm
$FileCreateMode 0640
$DirCreateMode 0755
$Umask 0022
# 卷轴和状态文件的位置(什么东东??)
$WorkDirectory /var/spool/rsyslog
# 导入所有配置文件
$IncludeConfig /etc/rsyslog.d/*.conf
规则
# 标准日志文件(登陆设备/服务类别)
auth,authpriv.* /var/log/auth.log
*.*;auth,authpriv.none -/var/log/syslog
#cron.* /var/log/cron.log
daemon.* -/var/log/daemon.log
kern.* -/var/log/kern.log
lpr.* -/var/log/lpr.log
mail.* -/var/log/mail.log
user.* -/var/log/user.log
#
# 邮件日志记录,分开记录是为了处理方便.
mail.info -/var/log/mail.info
mail.warn -/var/log/mail.warn
mail.err /var/log/mail.err
# 新闻日志
news.crit /var/log/news/news.crit
news.err /var/log/news/news.err
news.notice -/var/log/news/news.notice
#
# 根据信息级别来定义日志文件
# =xxx表示等于xxx级别的信息
# 等于debug级别的信息,保存在/var/log/debug文件中
# none表示排除掉该服务
*.=debug;\
auth,authpriv.none;\
news.none;mail.none -/var/log/debug
# 等于info,notice,warn级别的信息,保存在/var/log/messages中
*.=info;*.=notice;*.=warn;\
auth,authpriv.none;\
cron,daemon.none;\
mail,news.none -/var/log/messages
过滤日志
#
# Emergencies are sent to everybody logged in.
#
*.emerg :omusrmsg:*
.xxx: 表示大于等于xxx级别的信息
.=xxx:表示等于xxx级别的信息
.!xxx:表示在xxx之外的等级的信息
服务类别
Linux的syslog服务定义了一些规范的服务类别,建议按照规范来生成日志;
auth: 主要与认证/授权有关的机制,例如 login, ssh, su 等需要账号/密码的服务;
authpriv: 与auth类似,但记录较多账号私人信息,包括 pam 模块等;
user: 用户级信息
日志等级
一共分为7个等级
参考文档
http://linux.vbird.org/linux_basic/0570syslog.php#syslog_conf_default