Linux上的日志系统

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

 

 

 

 


你可能感兴趣的:(linux,action,配置文件,邮件系统)