Linux杂记 日志系统

  • 日志系统
  • 用于记录各个子系统产生的各个信息,是用于故障诊断,日志系统分为syslog syslog-ng(next genration),两个日志系统文件配置很大,通常来说,产生日志的子系统,称为facility;
  • syslog: 对于linux上面的大多数进程,都可以自己负责处理产生的日志,所以并不是所有的模块都是使用syslog来记录日志的,但是对于系统上面固定的,核心的facility是使用syslog()来进行定义的;
  • klogd用于负责内核产生的日志,默认记录在/var/log/dmesg,通过命令dmesg可以用于查看日志;syslogd用于负责记录非内核产生的日志,包括:标准系统错误日志信息,非内核产生的引导信息,各个子系统产生的引导信息,日志记录在/var/log/messages,由于这个文件里面记录的日志繁多,所以这个日志是需要进行滚动的,对于过期的日志信息就会自动删除,日志滚动的条件时可以通过时间,大小等方式进行设定,日志的滚动也成为日志切割;
  • logrotates:主要用于进行日志滚动和日志切割,对于日志滚动的配置文件:/etc/logrotate.conf:
# see "man logrotate" for details
# rotate log files weekly
weekly

# keep 4 weeks worth of backlogs
rotate 4
//表示保留日志的几个版本
# create new (empty) log files after rotating old ones
create

# use date as a suffix of the rotated file
dateext

# uncomment this if you want your log files compressed
#compress

# RPM packages drop log rotation information into this directory
include /etc/logrotate.d

# no packages own wtmp and btmp -- we'll rotate them here
/var/log/wtmp {
    monthly
    create 0664 root utmp
    minsize 1M
    rotate 1
}
/var/log/btmp {
    missingok
    monthly
    create 0600 root utmp
    rotate 1
}
  • 对于分割的记录格式就是按照/etc/logrotate.conf里面的格式来进行定义的
  • /var/log/maillog:用于记录邮件系统产生的信息;
  • /var/log/secure:用于记录安全信息,权限为600,为了安全需要将这里面的日志信息需要进行备份;
  • 日志的记录格式
facility.priority           action
facility,可以立即为日志的来源或者设备目前采用额facility包含一下几种:
auth                #   表示和认证相关的
authprity           #   权限 授权相关的
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         #   会导致系统不可用的
*               #   表示所有的日志级别
ncne                #   跟 * 相反,表示什么也没有
action(动作):日志的记录位置
系统上面的绝对路径           #   表示普通文件,如/var/log/xxx
|               #   管道  通过管道送给其他命令处理
终端              #   终端  如:/dev/console
@HOST               #   远程主机,如:@10.0.0.1
用户              #   系统用户,如:root
*               #   登录到系统上面的所有用户,
-/var/log/message:表示异步写入;
阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_36294875/article/details/79952212
个人分类: Linux运维笔记
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭