• Linux 日志管理


    日志管理

    日志进程rsyslogd

    rsyslogd:系统专职日志程序,处理大部分日志记录,系统操作有关的信息,如:登录信息,错误信息等
    在这里插入图片描述

    常见的日志文件

    • tail -10 /var/log/messages :查看系统主日志文件的前10行
    • tail -f /var/log/messages :动态查看系统主日志文件
    • /var/log/secure : //认证,安全
    • /var/log/yum.log : //yum
    • /var/log/maillog : //跟邮件postfix相关
    • /var/log/cron: //crond,at进程相关日志
    • /var/log/dmesg: //系统启动相关

    配置rsyslogd

     yum install rsyslog logrotate //安装
     systemctl start rsyslog.service //启动程序
     rpm -qc rsyslog //查询软件包的安装情况/配置文件
    
    • 1
    • 2
    • 3

    在这里插入图片描述

    /etc/rsyslog.conf //rsyslogd的主配置文件
    /etc/sysconfig/rsyslog //rsyslogd相关文件,定义级别
    /etc/logrotate.d/syslog // 和日志轮状相关
    
    • 1
    • 2
    • 3

    主配置文件

    vim /etc/rsyslogd.conf
    
    • 1
    RULES

    规则,是一套生成日志,以及存储日志的策略;规则由设备+级别+存放位置组成
    RULES = FACILITY + LEVEL + FILE

    authpriv.*  /var/log/secure(SSH信息)
    mail.*   -/var/log/maillog(发邮件)
    cron.*  /var/log/cron(创建任务)
    
    • 1
    • 2
    • 3
    FACILITY&LEVEL
    facility设备

    程序自身会决定将日志交给哪类设备,收集同类日志。eg:SSH程序交给安全设备。(由开发者定义)
    设备类型

    • LOG_SYSLOG:syslogd自身产生的日志
    • LOG_AUTHPRIV:安全认证
    • LOG_CRON:系统调度
    • LOG_MAIL:有劲啊系统mail subsystem
    • LOG_USER:用户相关
    • LOG_DEMON:后台进程
    • LOG_FTP:文件服务器
    • LOG_KERN:内核程序
    • LOG_LPR:打印机
    • LOG_LOCAL0 ~ LOG_LOCAL7:自定义设备
    level级别
    • LOG_EMERG:紧急,致命,服务器无法继续运行,如配置文件丢失
    • LOG_ALERT:报警,需要立即处理
    • LOG_CRIT:致命行为
    • LOG_ERR:错误行为
    • LOG_WARNING:警告信息
    • LOG_NOTICE:普通,重要的标准信息
    • LOG_INFO:标准信息
    • LOG_DEBUG:调试信息,排错所需

    日志轮转logrotate

    通过日志可以分析用户的行为,记录运行轨迹,查找程序问题
    为了节省空降和方便整理,日志文件经常需要按时间或大小等维度分成多份,删除时间久远的日志文件

    按照配置进行轮转

    配置文件种类

    主文件 /etc/logrotate.conf(决定每个日志文件如何轮转)
    子文件 /etc/logrotate.d/*(自定义配置)
    
    • 1
    • 2

    在这里插入图片描述

    • weekly:轮转的周期
    • rotate4:保留4份
    • create:轮转后创建新文件
    • dateext:使用日期后作为后缀
    • compress:是否压缩
    • include /etc/logrotate.d:包含该目录下的子配置文件
    • /var/log/wtmp{ //对某日志文件设置轮转的方法
      monthly //一月轮转一次
      create 0664 root utmp //轮转后创建新文件并设置权限
      minsize 1M //最小达到1m才轮转
      rotate 1//保留1份
      }
    • /var/log/btmp {
      missingok //丢失不提示
      monthly//每月轮转
      create 0600 root utmp//轮转后创建新文件并设置权限
      }
  • 相关阅读:
    React Native 学习 之 环境搭建(andoid)
    【PAT甲级】1127 ZigZagging on a Tree
    服务器挂机
    CMake (零基础一)
    数据结构-----红黑树的删除操作
    springmvc中针对一个controller方法配置两个url请求
    人工智能知识全面讲解:让数据更直观的方法
    linux设备树节点添加新的复位属性之后设备驱动加载异常问题分析
    什么是交叉编译
    智云通CRM:如何使用万能的“三问”,提升业绩?
  • 原文地址:https://blog.csdn.net/weixin_53946312/article/details/125614495