Linux上的日志系统
1、syslog
2、syslog-ng 下一代升级版日志系统
红帽5使用syslog 6使用syslog-ng
syslog 服务
syslogd : 系统,非内核产生的信息
klogd : 内核,专门负责记录内核的日志信息
系统启动时所输出的信息【到init启动之前的所有信息】:kernel -->物理终端(/dev/console) --> /var/log/demesg
可以直接打开文件查看,也使用demesg命令来查看
init启动及之后的非内核产生的信息:
/var/log/messages : 系统标准错误日志;非内核产生引导信息;各子系统产生的信息
/var/log/maillog:邮件系统产生的日志信息
/var/log/secure: 任何用户尝试登陆系统的信息
syslog配置文件:
/etc/syslog.conf
配置文件定义格式 : facility priority action
来源 级别 动作
facility,可以理解为日志的来源或设备目前常用的facility;有以下几种:
auth 认证相关的
authpriv 权限,授权相关的
cron 任务计划相关的
daemon 守护进行相关的
kern 内核相关的
lpr 打印相关的
mail 邮件相关的
mark 标记相关的
news 新闻相关的
security 安全相关的
syslog syslog自己的
user 用户相关的
uucp unix to unix cp 相关的
local0 到 loacal7 用户自定义使用
priority(log level) 日志的级别,一般有以下几种级别(从低到高)
debug 程序或系统的调试信息
info 一般信息
notice 不影响正常功能,需要注意的消息
warning/warn 可能影响系统功能,需要提醒用户的重要事件
err/error 错误信息
crit 比较严重的
alert 必须马上出来的
emerg/panic 会导致系统不可用的
* 表示所有的日志级别
none 跟*相反,表示啥也没有
action(动作)日志记录的位置(前面加-表示异步写入)
系统上的绝对路径 普通文件
| 管道 通过管道送给其他的命令处理
终端 如/dev/console
@HOST 远程主机
用户 系统用户
* 登陆到系统上的所有用户,一般emerg级别的日志是这样定义的
例:
mail.info /var/log/mail.log 表示将mail相关的,级别为info及以上级别的信息记录到/var/log/mail.log文件中
auth.=info @10.0.0.1 表示将auth相关的,级别为info的信息记录到10.0.0.1主机上
前提是10.0.0.1要能接收其他主机发来的日志信息
user.!=error 表示记录user相关的,不包括error级别的信息
user.!error 与user.error相反,表示记录与user相关,error级别以下的信息
*.info
mail.*
cron.info;mail.info
cron,mail.info
mail.*;mail.!=info
syslog配置文件更改后要重启服务或reload重读配置文件:
service syslog restart (不建议重启,以免错过某些正在写入的日志信息)
service syslog reload
本文出自 “Mr.Zhu -- 技术交流” 博客,请务必保留此出处http://bjishu.blog.51cto.com/7481301/1699655
原文地址:http://bjishu.blog.51cto.com/7481301/1699655