linux运维开发之路(九)— 系统日志管理篇

一、rsyslog    

       此服务是用来采集系统日志的,他不生产日志,只是起到采集作用。

二、rsyslog的管理
      /var/log/messages   ## 服务信息日志
      /var/log/secure          ## 系统登陆日志
      /var/log/cron              ## 定时任务日志
      /var/log/maillog         ## 邮件日志
      /var/log/boot.log       ## 系统启动日志

三、日志管理服务

     1. rsyslog       ## 负责采集日志和分类存放日志
     2. rsyslog       ## 日志分类
     vim  /etc/rsyslog.comf      ##主配置文件
    服务 .日志级别        /存放文件
           *.*                       /var/log/westos

    systemctl    restart   rsyslog  (修改后一定要运行此条命令)

    3.日志的远程同步

        在日志发送方:
          vim /etc/rsyslog.conf
           *.*    @接收端ip              ## "@"表示udp协议发送, "@@"表示tcp协议发送。

          systemctl    restart    rsyslog

      

      在日志接收方:
           vim /etc/rsyslog.conf
              ModLoad imudp      ## 日志接受模块
              UDPServerRun        ## 开启接收端

         linux运维开发之路(九)— 系统日志管理篇

     systemctl restart rsyslog.server       ## 重启服务
     systemctl stop firewalld                    ## 关闭火墙
     systemctl disable firewalld               ## 设定火墙开启关闭

    测试:
           在发送方和接收方都清空日志文件
                   >   /var/log/messages

          在日志的发送方
               logger test     ## 产生日志
               cat  /var/log/messages    ## 查看日志已经生成

                linux运维开发之路(九)— 系统日志管理篇

         在日志接收方查看
             cat   /var/log/messages

              linux运维开发之路(九)— 系统日志管理篇
四、日志采集格式的设定

     $template,LOGFMT, "%timegenerated% %FROMHOST-IP% %syslogtag% %msg%\n"

     %timegenerated%          ## 显示日志时间
     %FROMHOST-IP%        ## 显示主机Ip
     %syslogtag%                  ## 日志记录内容
     %msg%                           ## 日志内容
      \n                                     ## 换行

五、时间同步服务
     服务名称
          chronyd

    在服务端:
          vim /etc/chrony.conf
          allow  172.25.254.106         ## 允许客户端来同步本机时间
          local  stratum 10                   ## 本机不同步任何主机的时间,本机作为时间源。

          linux运维开发之路(九)— 系统日志管理篇

          linux运维开发之路(九)— 系统日志管理篇

    在客户端:
          vim   /etc/chrony.conf
          server  172.25.254.206  iburst    ## 本机立即同步206主机的时间

           linux运维开发之路(九)— 系统日志管理篇

           systemctl  stop firewalld                                      ## 关闭火墙

           systemctl  restart  chronyd.service                     ## 重启chronyd服务
           timedatectl  set-timezone  Asia/Chongqing      ## 更改当前时区为东8区

   测试:
         在客户端
                   chronyc    sources -v

                   linux运维开发之路(九)— 系统日志管理篇

六、timedatectl 命令 

        timedatectl                      ## 管理系统时间
        timedatectl    status        ## 显示当前时间信息
        set-time                           ## 设定当前时间
        set-timezone                   ## 设定当前时区
        set-local-rtc 0|1               ## 设定是否支持UTC时间
        list-timezone                    ## 查看支持的所有时区

七、journal查看日志  
       rsyslog是对日志进行采集,journal是直接查看日志

    1. journalctl                         ## 日志查看工具
            journalctl  -n  3                ## 查看最近3条日志

            linux运维开发之路(九)— 系统日志管理篇
            journalctl  -p  err             ## 查看错误日志

            linux运维开发之路(九)— 系统日志管理篇
            journalctl  -o  verbose    ## 查看日志的详细参数
            journalctl  --since            ## 查看从什么时间开始的日志
            journalctl  --until               ## 查看到什么时间为止的日志


    2.如何使用systemd-journald保存系统日志

      默认systemd-journald是不保存系统日志到硬盘的,那么关机后再次开机只能看到本次开机之后的日志,上次关机之前的日志是无法查看的。

          mkdir  /var/log/journal
          chgrp  systemd-journal  /var/log/journal
          chmod  g+s  /var/log/journal
          killall  -1  systemd-journald

           linux运维开发之路(九)— 系统日志管理篇

          ls /var/log/journal     ## 查看日志

           linux运维开发之路(九)— 系统日志管理篇