日志管理(排错,查看问题时候查看)

 

 

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

       /etc/rsyslog.d         rsyslog 的子配置文件

vim  /etc/rsyslog.conf   (告诉rsyslog进程什么日志应该存在哪里)

RULES:即规则,是一套生成日志及存储日志的策略

    RULES:即规则,有三部分组成,(设备+级别+存放位置)

   示例:authpriv.*       /var/log/secure     SSH信息(同步方式存储---慢)

         mail.*         -/var/log/maillog     发邮件(异步方式存储----快)

         cron.*          /var/log/cron        创建任务(同步方式存储---慢)

  facility(设备)

1、是系统对某种类型APP事件的定义,如authpriv 是安全事件,cron是计划任务事件。

  2、帮助手册   man  3     syslog

   设备类型:LOG_SYSLOG   syslog自身产生的日志

             LOG_AUTHPRIV  安全认证日志

             LOG_USER(defaults)    用户相关的日志

程序类型示例:

             grep   facility   /etc/ssh/sshd_config

级别(level)

     LOG_INFO  标准信息    次  (信息量大)

     LOG_ERR   错误行为    高    (信息量小)

存放位置   自定义存放

通过绘图形式来理解日志工作机制。如图所示

日志管理(排错,查看问题时候查看)

 

 

(1)简介:

1、磁盘的空间是有限的

2、日志轮转就像飞机里的黑匣子,记录的信息再重要也只能记录最后一段时间发生的事。

(2)查看相关文件:rpm   -qc   logrotate

系统默认已安装:yum  -y   install  logrotate

主配置文件:/etc/logrotate.conf    (全部默认配置)

子配置文件:/etc/logrotate.d/*      (个别配置)

(3)vim  /etc/logrotate.conf        主配置文件

全局日志

weekly                //  轮转的周期,一周轮转

rotate   4            //   保留4份(保留的是一个月) 

create                //   轮转后创建新日志文件

dateext               //   使用日期作为后缀

compress             //    是否压缩

include  /etc/logrotate             //   包含该目录下的子配置文件

/var/log/wtmp  {                 //   对某日志设置轮转方法

monthly                         //    一个月轮转一次

minsize   1M                    //   最小达到1M才轮转,monthly和minsize要同时达到两个条件

maxsize                   //与日期异或,达到一个或两个条件

create   0664   root  utmp      //  轮转后创建新文件,并设置权限

rotate  1                       //  保留一份

                      }

日志管理(排错,查看问题时候查看)

改写yum的轮转规则

方法一:vim  /etc/logrotate.conf   主配置文件   进去写

方法二:vim  /etc/logrotate.d/yum   进入子配置文件,改写规则

/var/log/yum.log   {

# missingok     丢失不执行

#notitempty     空文件不轮转

#maxsize   30K   达到30k轮转,daily或size

#yearly           一年轮转一次

#create   0600    root   root   轮转后创建新文件,并设置权限

daily            缩小周期到一天

rotate  3     轮转保留三次

create  0777   root  root 

错误示范:

日志管理(排错,查看问题时候查看)

没有设置日期,即使轮转多次也只有一个新的文件

正确示范:修改时间,手动触发轮转

日志管理(排错,查看问题时候查看)

发绿:有执行权限

发黑:无执行权限

2、找message系统日志

方法1:cat  /etc/logrotate.d/*   |  grep   messages

方法2:日志管理(排错,查看问题时候查看)

日志管理(排错,查看问题时候查看)

日志保护:使日志只能追加,不能删除

 

 

 

 

logrotate配置方法是已知的,但是logrotate是谁让他们运行的呢?

答案是:cron

#ls  /etc/cron*

/etc/crontab   是主配置

/etc/cron.d    是子配置

Vim  /etc/cron.d/0hourly  (内有一个计划任务,每小时以root用户执行任务)

系统级计划任务:anacron   专门解决未执行的任务

Vim  /etc/cron.hourly/0anacron(cron.hourly该目录存储着系统的任务计划anacron程序—救急)

   Vim  /etc/anacrontab     主配置文件  (anacron  按日,周,月,定期执行任务,其中包含logrotate程序)

  • 日志进程rsyslog
  • 1、关心的问题:那类程序,产生什么日志,放到什么地方

    2,、rsyslog:系统专职日志程序,处理绝大部分日志记录,系统操作有关的信息,如登录信息,程序启动关闭信息。(systemctl  status  rsyslog.service   查看状态必须是开启的,否则是关闭的不能记录日志信息)

    3、观察rsyslog进程:ps  aux  |grep  rsyslog

       #ls  /var/log   内容全是日志文件

         boot    启动日志

         cron     计划日志

         dmesg    系统启动

         wtmp     当前登录用户

         btmp     最近登录用户

    4、系统主日志

    查看系统的主日志:ls  /var/log/messages

    对主日志计数:cat  /var/log/messages  |wc  -l

    找错用tail 看后10行:tail  -10  /var/log/messages

    tailf  /var/log/messages = tail  -f  /var/log/messages (锁在屏幕,多窗口查看)

    5、安全日志

       tailf   /var/log/secure      与登录有关

    6、安装日志

       tailf   /var/log/yum.log

    7、邮件日志

       tailf  /var/log/maillog

      格式:时间   :主机  : 程序类型   :   什么事

    8、rsyslog配置:

      (1)相关程序   yum  -y  install  rsyslog   默认已安装

      (2)启动程序   systemctl  start  rsyslog.service

  •   相关文件  rpm  -qc   rysylog 
  •  查看日志管理配置文件      ls   /etc/rsyslog*
  • 日志轮转   logrotate
  • 关于logrotate和cron运行原理