syslogd(8) - Linux man page

http://linux.die.net/man/8/syslogd

http://book.51cto.com/art/200912/168763.htm


syslogd [ -a socket ] [ -d ] [ -f config file ] [ -h ] [ -l hostlist ] [ -m interval ] [ -n ] [ -p socket ] [ -r ] [ -s domainlist ] [ -S ] [ -v ] [ -x ]



-f 读配置文件


配置文件中:

! 取反

*   任意


样例一、

# Sample syslog.conf

mail.*;mail.!=info

/usr/adm/mail

news.info;news.!crit

/usr/adm/news



样例二、

!*     ---------------???
local6.err                      %/var/log/publog 10485760 666    ------------- 文件大小 和 权限。
!|AUTH|FP_CP_TABLE|
*.debug                         %/var/log/debug_trace 20971520 666


12.2.2  syslog配置

syslog的配置文件为/etc/syslog.conf,在该文件中指定了syslog记录日志的信息来源、信息类型以及保存位置。下面是该文件内容的一个实例。

 
 
  1. # Log all kernel messages to the console.  
  2. # Logging much else clutters up the screen.  
  3. # kern.*                            /dev/console  
  4. # Log anything (except mail) of level info or higher.  
  5. # Don't log private authentication messages!  
  6. # 把除邮件、授权和定时任务以外的其他info级别的信息 记录到/var/log/messages日志文件中  
  7. * .info;mail.none;authpriv.none;cron.none       /var/log/messages  
  8. # The authpriv file has restricted access.  
  9. # 把所有授权信息记录到/var/log/secure日志文件中  
  10. authpriv.*                      /var/log/secure  
  11. # Log all the mail messages in one place.  
  12. # 把所有级别的邮件信息记录到/var/log/maillog日志文件中  
  13. mail.*                          -/var/log/maillog  
  14. # Log cron stuff  
  15. # 把所有级别的定时任务信息记录到/var/log/cron日志文件中  
  16. cron.*                          /var/log/cron  
  17. # Everybody gets emergency messages  
  18. # 把emerg级别的信息发送给所有登录用户  
  19. * .emerg                            *  
  20. # Save news errors of level crit and higher in a special file.  
  21. uucp,news.crit                  /var/log/spooler  
  22. # Save boot messages also to boot.log  
  23. # 把所有的系统启动信息记录到/var/log/boot.log日志文件中  
  24. local7.*                        /var/log/boot.log 

该文件以井号"#"为注释符,其中每一行的语法格式为:

 
 
  1. [消息来源.消息级别] [动作] 

其中,[消息来源.消息级别]和[动作]之间以Tab键进行分隔,同一行syslog配置中允许出现多个[消息来源.消息级别],但必须要使用分号";"进行分隔,例如:

 
 
  1. mail.*; cron.*      /var/log/test.log 

其中消息来源表示发出消息的子系统,如表12.3列出了syslog中的所有消息来源。

表12.3  syslog消息来源及说明

   

    

   

    

authpriv

安全/授权信息

mail

邮件子系统

cron

定时任务

news

网络新闻子系统

daemon

守护进程

syslog

syslogd内部产生的信息

ftp

ftp守护进程

user

一般用户级别信息

kern

内核信息

uucp

UUCP子系统

lpr

打印机子系统

local0-local7

本地用户


优先级代表消息的紧急程度,如表12.4所示按级别由高到低列出了syslog的所有消息级别及说明。

表12.4  syslog消息级别及说明

消 息 级 别

说    明

消 息 级 别

说    明

emerg

最紧急的消息

warning

警告消息

alert

紧急消息

notice

普通但重要的消息

crit

重要消息

info

通知性消息

err

出错消息

debug

调试级的消息——消息量最多


Syslog消息级别是向上匹配的,也就是说如果指定了一个消息级别,那么指定级别及比该指定级别更高级的消息都会被包括进去。例如,warning表示所有大于或者等于warning级别的消息都会被处理,包括emerg、alert、crit、err和warning。如果指定的是debug级别,那么所有级别的消息都会被处理。消息级别越低,消息的数量就越多。如果只想匹配某个确定级别的消息,而不希望包括更高级别的消息,可以使用等号"="进行指定。例如希望处理cron的notice级别的消息:

 
 
  1. cron.=notice        /var/log/test.log 

除此之外,syslog还支持两个特殊的消息级别关键字:"*"和none。其中"*"表示匹配所有来源或级别的消息;none表示忽略所有消息。

[动作]是用于指定消息的处理方式。Syslog支持把消息保存到日志文件中、发送给指定的用户、显示在终端上或者通过网络发送到另外一台syslog服务器上进行处理。如表12.5中列出了Syslog中所有可用的动作及其说明。

表12.5  syslog动作说明

动    作

说    明

文件名

将消息保存到指定的文件中

@主机名或IP地址

转发消息到另外一台syslog服务器上进行处理

*

把消息发送到所有用户的终端上

/dev/console

把消息发送到本地主机的终端上

| 程序

通过管道把消息重定向到指定的程序

用户名列表

把消息发送给指定的用户,

用户名以逗号“,”进行分隔

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值