日志系统:

  • Linux上的日志系统:
    • syslog(rsyslog)
    • syslog-ng(开源)
  • syslog服务:
    • syslogd(系统、非内核产生的信息)
    • klogd(内核,专门负责内核产生的日志信息)
    • 信息详细程序:日志级别
    • 产生日志信息的子系统:facility,设施
    • 指定信息的存储位置(动作)

配置文件:/etc/syslog.conf

  • 定义格式:facility.priority action
    • facility:可以理解为日志的来源或设备
  • 目前常用的facility有一下几种:
    • auth –认证相关的
    • authpriv –权限,授权相关的
    • cron –任务计划相关的
    • daemon –守护进程相关的
    • kern –内核相关的
    • lpr –打印相关的
    • mail –邮件相关的
    • mark –标记相关的
    • news –新闻相关的
    • security –安全相关的,与auth类似
    • syslog –syslog自己的
    • user –用户相关的
    • uucp –unix to unix cp 相关的
    • local0 – local7 –用户自定义使用
    • \’*\’ –表示所有的facility
  • priority(log level)日志的级别,一般有以下几种级别(从低到高)
    • debug –程序或系统的调试信息
    • info –一般信息
    • notice –不影响正常功能,需要注意的信息
    • warning/warn –可能影响系统功能,需要提醒用户的重要事件
    • err/error –错误信息
    • crit –比较严重
    • alert –必须马上处理的
    • emerg/panic –会导致系统不可用的
    • “*” –表示所有的日志级别
    • none –跟* 相反,表示啥也没有
  • action(动作)日志记录的位置
    • 系统上的绝对路径,如:/var/log/xxx
    • \’l\’ –管道 通过管道送给其他的命令处理
    • 终端,如:/dev/console
    • HOST –远程主机 如:@10.0.0.1
    • 用户 –系统用户 如:root
    • \’*\’ –登录到系统上的所有用户,一般emerg级别的日志是这样定义的

  • 日志需要滚动(日志切割 logrotate):

    • message message.1 message.2
    • 脚本:/etc/cron.daily/logrotate
    • 配置文件:/etc/logrotate.conf
  • kernel –> 物理终端(/dev/console) –> /var/log/dmesg(命令:dmesg)

  • /sbin/init

    • /var/log/messages:
      • 系统标准错误日志信息;
      • 非内核产生引导信息;
      • 各子系统产生的信息;
    • /var/log/maillog:邮件系统产生的日志信息;
    • /var/log/secure:可查看登录信息
/etc/sysconfig/syslog
SYSLOGD_OPTIONS="-r -m 0"	-r 设置为日志服务器
service syslog restart
service syslog reload(无需中断服务)

版权声明:本文为liangjingfu原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/liangjingfu/p/9314889.html