- 论坛徽章:
- 0
|
在HP-UX中,会在rc2.d的运行级别中启动S220syslog。通过ls -l /sbin/rc2.d/S220syslog可以看出来,它是指向/sbin/init.d/syslogd的联接。
系统日志会由syslog()将记录的日志发送给syslogd,然后syslogd会根据/etc/syslog.conf中的配置,将日志过滤,并写入到相应的文件当中,成为我们日常维护时需要检查的日志文件。
根据/etc/syslog.conf文件的配置内容,syslogd会做以下几件事情:
1. 记录到系统日志中;
2. 写到系统控制台上;
3. 转发给指定的用户;
4. 转发给其他主机的syslogd。
我们现在已经知道了,syslogd会在系统自动的时候,由/sbin/rc2.d/S220syslog启动起来,如果需要手工停止或者启动syslogd,可以用以下命令:
#/sbin/init.d/syslogd stop
#/sbin/init.d/syslogd start
/etc/syslog.conf文件中的每一行记录由“选项(Selector)”和“动作(Action)”两部分组成,两者之间用Tab制表符进行分隔。而“选项(Selector)”又由一个或多个形如“类型.级别”格式的保留字段组合而成,各保留字段由“;”分隔。
保留字段中的类型表示日志产生的源头,一般为以下类型:
1. LOG_KERN
由kernel产生的日志。这一类日志是不会由任何用户进程产生的。
2. LOG_USER
由用户进程产生的日志。
3. LOG_MAIL
邮件系统产生的日志。
4. LOG_DAEMON
由系统后台进程产生的日志,例如:ftpd,inetd等等。
5. LOG_AUTH
由login,su,getty等进行身份认证时产生的日志。
6. LOG_SYSLOG
由syslogd自己产生的日志。
7. LOG_LPR
打印时产生的日志。
8. LOG_NEWS
由网络新闻系统产生的日志。
9. LOG_UUCP
由UUCP产生的日志。
10. LOG_CRON
由cron和at工具产生的日志。
11. LOG_LOCAL0 - 7
保留给local使用。
保留字中的级别表示信息的重要程度,一般为以下几类:
1. LOG_EMERG
一般是表示发生panic了,此级别的信息会发送给所有的拥护。
2. LOG_ALERT
一般表示当前的状态需要立即修正,例如数据库崩溃。
3. LOG_CRIT
严重警告,一般表示发生了硬件故障。
4. LOG_ERR
错误,严重性没有以上三类那样大。
5. LOG_WARNING
警告信息。
6. LOG_NOTICE
注意信息。并不表示错误,但是应该尽可能的处理。
7. LOG_INFO
一般信息。
8. LOG_DEBUG
一般表示调试程序时候的信息。
syslog()不会记录没有级别定义的日志。如果syslog()无法将日志传递给syslogd,并且LOG_CONS选项已经打开了,那么它会尝试将信息写到/dev/console。
当下列两种情况发生的时候,syslog日志记录不会成功:
1. /dev/log写入被阻塞了;
2. /dev/log不能被成功打开。
以上介绍了“选项(Selector)”的一些内容,下面继续介绍“动作(Action)”。Action表示日志信息要发往的目的地,一般为以下几类:
1. /filename
日志文件。这里需要使用到绝对路径,而且应该已经生成了这个文件。在这里,大家可以做这样两个测试,一个是如果之前没有生成这个文件,是否会在有该类日志信息的时候自动生成,一个是限制写入该文件的权限,看看是否能够成功记录。
2. user1,user2
指定用户。如果指定的用户已经的登陆,那么他们将会收到信息。*代表所有的用户。
3. @host |
|