liunx日志管理,小白请看过来

rsyslog 系统日志

 

系统日志是记录系统中硬件、软件和系统问题的信息,同时还可以监视系统中发生的事件。用户可以通过它来检查错误发生的原因,得知谁进行了某些违规操作。

日志主要有两类,一类是系统专职日志程序,与系统操作有关的信息,如登录信息,程序启动关闭信息,错误信息,处理绝大部分日志记录;还有一类是httpd/nginx/mysql: 各类应用程序,可以以自己的方式记录日志。

.rsyslog就是记录日志的程序,我们可以通过systemctl status rsyslog 来查看rsyslog程序是否在运行,默认情况下它是开启自启的,并且正在运行。

常见的日志文件:# tail  /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    //和系统启动相关日志

rsyslog配置:

1:首先安装rsyslog,和logroate            yum -y install rsyslog   logrotate

2:启动程序:systemctl  start    rsyslog.service 查看rsyslog状态 systemctl status rsyslog

3:观察相关的配置文件:rpm -qc rsyslog    其中/etc/rsyslog.conf 是rsyslogd的主配置文件,/etc/sysconfig/rsyslog 是rsyslogd相关文件,定义级别  /etc/logrotate.d/syslog和日志办轮转相关;

/etc/rsyslog.conf中有一个RULES:即规则,是一套生成日志,以及存储日志的策略。在/etc/rsyslog.conf中我们可以对日志存放文件进行修改,修改之后原来的日志存放文件将不再存放文件,而是由新改的文件进行日志存储,一般不建议修改。RULES即规则,有三部分组成(由设备+级别+存放位置);例如:cron(设备).*(级别)             /var/log/cron(存放位置),更改这里的存放位置就能够更改日志存放。级别*意思是不区分级别,所有cron设备的日志都存放在后面的目录里。设备是系统对某种类型APP事件的定义。如AUTHPRIV是安全事件,CRON是计划任务事件。用来收集同类程序日志。关于程序和设备的联系问题,程序自身会决定将日志交给哪类设备。如SSH程序会选择安全类设备。

设备类型:LOG_SYSLOG  syslogd自身产生的日志            LOG_AUTHPRIV    安全认证

LOG_CRON   调度程序(cron and at)                 LOG_MAIL   邮件系统mail subsystem

LOG_USER (default)    用户相关                    LOG_DAEMON     后台进程

LOG_FTP       文件服务器ftp  daemon              LOG_KERN   内核设备kernel messages

LOG_LPR      打印机设备                     LOG_LOCAL0 through LOG_LOCAL(1-7)        用户自定义设备

级别:LOG_EMERG         紧急,致命,服务无法继续运行,如配置文件丢失

LOG_ALERT         报警,需要立即处理,如磁盘空使用95%

LOG_CRIT         致命行为                      LOG_ERR         错误行为

LOG_WARNING     警告信息                       LOG_NOTICE     普通,重要的标准信息

LOG_INFO         标准信息             LOG_DEBUG         调试信息,排错所需,一般不建议使用

logrotate日志轮转

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

配置文件种类:主配置文件:/etc/logrotate.conf, 决定每个日志文件如何轮转,子配置文件夹:/etc/logrotate.d/*自定义配置,便于管理。

主配置文件介绍:weekly         //轮转的周期,一周轮转     rotate 4         //保留4份

create         //轮转后创建新文件           dateext         //使用日期作为后缀

#compress     //是否压缩                   include /etc/logrotate.d    //包含该目录下的子配置文件

对某日志文件设置轮转的方法

/var/log/wtmp {     //对wtmp日志文件设置轮转的方法
monthly                 //一月轮转一次
minsize 1M         //最小达到1M才轮转,monthly and  minsize(同时达到两个条件)
create 0664 root utmp     //轮转后创建新文件,并设置权限
rotate 1         //保留一份
}

日志轮转实例:/var/log/yum.log 

 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

}

 

 

 

 

 

 

 

 

你可能感兴趣的:(liunx日志管理,小白请看过来)