系统日志

 linux使用syslog作为日志监控进程,对其进行配置能减少很多必要的麻烦,并可有效的从系统日志监控到系统的状态,

/etc/syslog.conf根据如下的格式定义规则:

facility.level action

即设备.优先级 处理方案

facility.level 字段也成为selector(选择条件),选择条件好处理方案之间用空格或tab分隔开

#号开头的是注释,空白行会自动跳过

facility 设备

设备定义了日志消息的范围,可以使用的key如下所示

auth: 有pam_pwdb 报告的认证活动

authpriv:包括特权信息,如用户名在内的认证活动

cron:与cron和at有关的计划任务信息

daemon:与inetd守护进程有关的后台进程信息

kern:内核信息,首先通过klogd传递

lpr:与打印服务有关的信息

mail:与电子邮件有关的信息

mark:syslog的内部功能,用于生成时间戳

news:来自新闻服务器的信息

syslog:由syslog生成的信息

user:由用户程序生成的信息

uucp:由uucp生成的信息

local0-local7: 与自定义程序一起使用

另外*通配符代表除mark以外的,securiy是一个旧的key定义,等同于auth,不建议使用

level优先级

level定义了消息的紧急程度,按严重程序有高到低顺序排列如下

emerg:该系统不可用,等同于panic

alert:需要立即被修改的条件

crit:危机情况

err:错误消息,等同于error

warning:预警信息,等同于warn

notice:具有重要性的普通条件

info:提供信息的消息

debug:不包含函数条件或问题的其他信息

none:没有重要级,通常用户排错

另外*代表所有的级别,除了none外,panic,error,warn均有旧的标识符,不建议使用,在定义level级别的时候,需要注意两点:

优先级是由应用程序在编程的时候决定的,除非修改源码在编辑,否则不能改变消息的优先级

低优先级包含高优先级,例如,为某个应用程序定义info的日志导向,则涵盖notice,warning,err,crit,alert,emerg等消息

通过小数点符号.,把设备和level连接在一起则成为selector条件,可以使用分号;同时定义多个选择条件,也支持如下的3个修饰符

*:表示所有的日志信息

=:仅包含本优先级的日志信息

!:不等于,本优先级日志信息除外

action(处理方案)

由前面选择条件定义的日志信息,可执行下面的动作

file:指定日志文件的绝对路径

terminal或print 发送到串行或并行设备的标志符,例如,/dev/ttyS2@host表示远程的日志服务器

username:发送信息到本机的指定用户信息窗口中,但该用户必须已经登陆到系统中

named pipe:发送到预先使用mkfifo命令创建的fifo文件的绝对路径中

你可能感兴趣的:(系统)