加载模块

#  /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