第十二章:走进Linux世界——系统日志管理,日志轮转。

1、关心问题:哪类程序---》  产生的什么日志----》  放到什么地方

2、处理日志的进程
    (1) 第一类:
        rsyslogd: 系统专职日志程序。 处理绝大部分日志记录,
        系统操作有关的信息,如登录信息,程序启动关闭信息,错误信息
   (2) 第二类:
        httpd/nginx/mysql: 各类应用程序,可以以自己的方式记录日志.

3、观察 rsyslogd程序
        [root@localhost ~]# ps aux |grep rsyslogd
root 717 0.0 0.0 219752 3880 ? Ssl 09:05 0:00 /usr/sbin/rsyslogd -n

4、常见的日志文件(系统、进程、应用程序)

# tail   -10   /var/log/messages         //系统主日志文件
# tail -f /var/log/messages               //动态查看日志文件的尾部
# tailf /var/log/secure                       //认证、安全
# tail /var/log/yum.log                      //yum
# tail /var/log/maillog                      //跟邮件postfix相关
# tail /var/log/cron                          //crond、at进程产生的日志
# tail /var/log/dmesg                      //和系统启动相关

  1. rsyslogd 配置
        (1)相关程序
             yum install rsyslog   logrotate          默认已安装
        (2)启动程序
            systemctl  start    rsyslog.service
        
    (3)相关文件
            rpm -qc rsyslog    
                /etc/rsyslog.conf                   rsyslogd
    的主配置文件(关键)
                /etc/sysconfig/rsyslog           rsyslogd相关文件,定义级别(了解一下)
                /etc/logrotate.d/syslog          和日志办轮转(切割)相关(任务二)
  2. 主配置文件——告诉进程什么日志,应该在哪里

# vim /etc/rsyslog.conf

RULES
    RULES
:即规则,是一套生成日志,以及存储日志的策略。
    RULES即规则,有三部分组成( 由设备+级别+存放位置 ) 
                                      RULES由FACILITY+LEVEL+FILE组成。
    authpriv.*         /var/log/secure(SSH信息)
    mail.*             -/var/log/maillog(发邮件)这里有一个 - 符号, 表示是使用异步的方式记录, 因为日志一般会比较大

cron.*             /var/log/cron(创建任务)    
    *.info;mail.none;authpriv.none;cron.none                /var/log/messages   
          系统日志排除了邮件,认证,计划日志。

关于程序和设备的联系问题,程序自身会决定将日志交给哪类设备。如SSH程序会选择安全类设备。这一点由开发者定义。

 

 

 

 

 

规则示意图——目的:通过绘图形式来理解日志工作机制。

 

二、logrotate 日志轮转

1、将大量的日志,分割管理,删除旧日志。、

2、简介
    日志  记录了程序运行时各种信息。
    通过日志可以分析用户行为,记录运行轨迹,查找程序问题。
    可惜磁盘的空间是有限的
    日志轮转就像飞机里的黑匣子,记录的信息再重要也只能记录最后一段时间发生的事。
    为了节省空间和整理方便,日志文件经常需要按!时间或!大小等维度分成多份,删除时间久远的日志文件。
3、工作原理 —— 按照配置进行轮转
  配置文件种类

主配置文件:/etc/logrotate.conf (决定每个日志文件如何轮转 ) 

子配置文件夹:/etc/logrotate.d/*    自定义配置,便于管理      观察主文件和子文件 

 [root@qianfeng ~]# ls /etc/logrotate.conf /etc/logrotate.d/
/etc/logrotate.conf
/etc/logrotate.d/:
acpid cups iscsiuiolog ppp rpm subscription-manager up2date wpa_supplicant
conman httpd mgetty psacct setroubleshoot syslog vsftpd.log yum

4、主配置文件介绍

5、yum日志轮转实例

(1)轮转的目标文件  /var/log/yum.log

(2)配置轮转规则

# vim /etc/logrotate.d/yum 
           /var/log/yum.log {
           missingok        //
丢失不执行
           # notifempty        //空文件不论转
           # maxsize 30k        //达到30k轮转, daily or  size
           # yearly        //或者一年一轮转
           daily        //缩小周期到1天
           rotate 3        //轮转保留3次

           create 0777 root root
           }

  1. 测试
        
    错误示范
            # /usr/sbin/logrotate /etc/logrotate.conf         //手动轮转
            # ls /var/log/yum*
            /var/log/yum.log   文件只有一个。因为日期没变
  2. 正确示范

        修改时间,手动触发轮转
        # date 04011000
            date  月日时分
            把时间向未来推移
        # /usr/sbin/logrotate      -s      /var/lib/logrotate/logrotate.status       /etc/logrotate.conf

   关于时间
        # grep 'yum' /var/lib/logrotate/logrotate.status //记录所有日志文件最近轮转的时间
        "/var/log/yum.log" 2019-3-31-10:0:23
            //
如果没有轮转过,第一次只有记录

 

 

 

 

 

滴~又是被迫营业的一天

最近,心情还算一般,不过状态不是很好,

最近最开心的事情就是和朋友一起吃了火锅。

一起唱歌录视频,害,奈何把一位艺术生逼成了IT狗,是责任嘛?是爱嘛?

到底是人性的扭曲还是道德的沦丧。不,是都不是,是贫穷,是贫穷限制了我的象限。

今天想写点悲伤的,也算是深有体会吧,因为我之前也是一名北漂。

有工作的地方没有家,有家的地方却没有工作,

他乡容纳不下灵魂,故乡安置不了肉身,

一个叫家的地方找不到养家糊口的路,找到了养家糊口的地方却安不了家,

从此便有了漂泊,有了远方,有了乡愁,有了无穷无尽的牵挂……

希望我们都有个不错的将来,加油。

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值