日志管理

##################################

#########系统日志管理##############

####################################

 

一、常见的日志文件

  (1)/var/log/messages  几乎系统发生的所有错误信息或重要信息都记录在这个文件中,包含系统启动时的引导消息及系统运行时的其他状态消息。

  (2)/var/log/secure    记录系统的安全信息,如ssh、ftp、pop3等。

  (3)/var/log/dmesg     记录系统在启动时核心检测过程所产生的各项信息。

  (4)/var/log/lastlog   记录系统上所有用户最后一次登陆系统的信息。

  (5)/var/log/wtmp      记录用户登陆系统及推出系统的信息,该文件无法直接查看,可用相关命令查看。如last及ac命令

  (6)/var/log/boot.log  记录守护进程启动和停止相关的日志信息。

  (7)/var/log/faillog   记录登录失败时的用户信息。

  (8)/var/log/cron      记录与定时任务相关的日志信息。

  (9)/var/log/maillog   记录系统邮件服务信息。

 

二、日志管理服务rsyslog

  ####1、配置文件####

  rsyslog的主配置文件为/etc/rsyslog.conf

 

  在该配置文件中可以配置日志记录的规则,其语法格式为:服务名[.=!]信息等级    记录方式

  1)服务名

      服务名表示针对该日志记录规则有效的服务名称。如果表示要对所有服务起作用,可以使用"*“

      服务名的详细说明

       ID     服务名          说明

       0       kern       内核日志信息

       1       user       用户日志信息

       2       mail       邮件系统日志信息

       3      daemon      系统守护进程日志信息

       4       auth       安全管理日志信息

       5      syslog      syslog守护进程日志信息

       6       lpr        打印服务日志信息

       7       news       新闻组服务日志信息

       8       uucp       uucp系统日志信息

       9       cron       cron守护进程日志信息

       10    authpriv     私有的安全管理日志信息

       11      ftp        ftp守护进程

    12~15  local0~local7 系统保留

    16~23                保留给系统本地使用

 

  2)信息等级

      信息等级表示该日志记录规则的信息等级,即优先级。如果要表示对所有等级有效,可以使用”*“

      信息等级的详细说明

       ID        信息等级            说明

       0       emerg或panic       系统不可用,死机

       1          alert           警告事件,可能会影响到系统的运行,必须立即采取行动纠正的事件

       2          crit            严重错误,比error更严重的错误,如硬件故障

       3        error或err        错误信息,如某些服务无法启动,需要立即检查错误原因

       4        warning           警告信息,但不会影响系统的进程

       5        notice            比info更应注意的信息,需要特别处理

       6         info             基本信息,主要是一些提示信息

       7         debug            程序调试信息

 

  3)连接符

      服务名与信息等级之间有一个连接符,与后面的信息等级结合使用可以表示服务要记录哪些级别的日志信息。

      <1> . :记录高于该等级的信息

      <2> .= :只记录该等级的信息

      <3> .! :记录除了该等级以外的所有信息

  #########################

  #######示例################

  #########################

  <一>配置及测试

      1、记录到普通文件或设备目录

         *.*     /var/log/file.log   # 绝对路径

         *.*     /dev/pts/0

         测试: logger -p local3.info ‘KadeFor is testing the rsyslog and logger ‘   logger 命令用于产生日志

 

      2. 发送给用户(需要在线才能收到)

         *.*   root

         *.*   root,kadefor,up01     # 使用,号分隔多个用户

         *.*   *         # *号表示所有在线用户

 

      3. 忽略,丢弃

         local3.*   ~        # 忽略所有local3类型的所有级别的日志

 

      4. 执行脚本::

         local3.*    ^/tmp/a.sh      # ^号后跟可执行脚本或程序的绝对路径

        # 日志内容可以作为脚本的第一个参数.

        #  可用来触发报警

  <二>日志同步

       systemctl stop firewalld         ##关闭两台主机的防火墙

      1、客户端配置

         vim /etc/rsyslog.conf-->*.*    @172.158.10.1

    

      2、接收方配置

         vim /etc/rsyslog.conf-->15、16 行注释符去掉

             15 $ModLoad imudp                    ##日志接收插件

             16 $UDPServerRun 514                 ##日志接收插件使用端口

 

      3、测试

         > /var/log/messages          ##两台主机都做,清空文件内容

         logger test message          ##日志发送方

         tail -f /var/log/message     ##日志接收方

 

三、日志采集格式

   $template WESTOS, "%timegenerated% %syslogtag% %msg%\n"

   

   %timegenerated%             ##显示日志时间

   %FROMHOST-IP%               ##显示主机IP

   %syslogtag%                 ##日志记录目标

   %msg%                       ##日志内容

   \n                          ##换行

 

   $ActionfileDefaultTemplate WESTOS

 

   *.info;mail.none;authpriv.none;cron.none                /var/log/messages;<<WESTOS>>

 

四、日志分析工具

   systemd-journald        ##进程名称

   journalctl             ##直接执行,浏览系统日志

   -n 3              ##显示最新3条

   -p err             ##显示报错

   -f         ##监控日志

   --since --until## --since "[YYYY-MM-DD] [hh:mm:ss]"      ##从什么时间到什么时间的日志

   -o verbose ##显示日志能够使用的详细进程参数  ##_SYSTEMD_UNIT=sshd.service服务名称 ##_PID=1182进程pid

 

   systemd-journald进行管理      ##默认情况下会忽略重启前的日志信息,若不忽略

   mkdir /var/log/journal

   chown root:systemd-journal /var/log/journal

   chmod 2755 /var/log/journal

   killall -1 systemd-journald

   ls /var/log/journal/4513ad59a3b442ffa4b7ea88343fa55f

   system.journal user-1000.journal

   

五、时间同步

   1、服务端

     yum install chrony -y##安装服务

 

     vim /etc/chrony.conf          ##主配置文件

       -->21 # Allow NTP client access from local network.

          22 allow 172.158.10.0/24   ##允许谁去同步我的时间

          27 # Serve time even if not synchronized to any NTP server.

          28 local stratum 10        ##不去同步任何人的时间,时间同步服务器级别

 

    systemctl restart chronyd

    systemctl stop firewalld

   2、客户端

     vim /etc/chrony.conf

       -->3 server 0.rhel.pool.ntp.org iburst

          4 server 1.rhel.pool.ntp.org iburst====> server ntpserverip iburst

          5 server 2.rhel.pool.ntp.org iburst====>

          6 server 3.rhel.pool.ntp.org iburst

 

     systemctl restart chronyd

 

   3、测试

     chronyc sources -v

 

六、timedatectl命令

    timedatectlstatus   ##显示当前时间信息

 

     set-time   ##设定当前时间

 

set-timezone      ##设定当前时区

 set-local-rtc 0|1  ##设定是否使用utc时间

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值