linux自带日志管理工具logrotate

1、logrotate
生产上机器的日志量有可能增加很是快,日志文件很快就会撑满磁盘影响线上服务,那么就须要一个实用的日志管理工具来代替人工切割日志,linux自带的logrotate日志管理工具彻底能够知足需求,logrotate能够自动对日志进行截断(或轮询)、压缩以及删除旧的日志文件,与定时任务crontab结合使用。先看看关于logrotate几个经常使用参数,其他参数可在命令行man logrotate查看:linux

配置参数 说明
monthly 日志文件将按月轮询。其它可用值为'daily','weekly'或者'yearly'
rotate num 一次将存储num个归档日志。对于第num+1个归档,时间最久的归档将被删除
missingok 在日志轮询期间,任何错误将被忽略,例如“文件没法找到”之类的错误
notifempty 当目标文件为空时,不进行轮询
create 644 root root 指定新建立的日志文件的权限,同时logrotate也会重命名原始日志文件
compress 轮询完成后,对归档的文件进行gzip压缩
delaycompress 和compress配合使用,不对最新归档的日志文件进行gzip压缩,以便工做人员对最新的归档日志进行查询
include 与nginx等的include做用一致,指定自定义配置文件的路径,瘦身主配置文件 ,规范化
postrotate/endscript 在全部其它指令完成后,postrotate和endscript里面指定的命令将被执行
postrotate/endscript 在全部其它指令执行以前,prerotate和endscript里面指定的命令将被执行

1.安装logrotate,在默认centos系统安装自带logrotate:
linux自带日志管理工具logrotate
2.yum安装logrotate默认配置文件在/etc/下,查看默认配置文件格式:
linux自带日志管理工具logrotate
主配置文件里面有设置默认的日志切割,咱们能够根据这个格式进行添加咱们所需求的日志切割配置,为了规范化配置文件,在主配置文件使用include参数:
linux自带日志管理工具logrotate
在logrotate.d中自定义配置文件:
linux自带日志管理工具logrotate
123.txt是用来测试配置生效的,可自行设置命令
3.手动运行logrotate验证配置文件:
linux自带日志管理工具logrotate
可查看源日志文件目录生成了一个新的日志文件:
linux自带日志管理工具logrotate
也能够在/root目录下查看是否产生配置文件中设置的123.txt
linux自带日志管理工具logrotate
可看到配置文件是生效的
关于logrotate的参数可以使用‘man logrotate’查看详情,
-f是强制执行一第二天志切割,-v是显示出具体的输出
以上配置模板相对比较通用,后期使用时可根据需求调整参数
4.此时,咱们再执行一个yum的任务:
linux自带日志管理工具logrotate
再强制执行logrotate:
linux自带日志管理工具logrotate
此时再查看yum.log所在目录会产生一个压缩和一个新的归档日志文件,可是新的归档日志没有进行压缩,这就是咱们设置的conpress和delaycompress参数的做用:
linux自带日志管理工具logrotate
2、cron
logrotate是经过cron天天触发执行的的,可看到cron的配置文件:
linux自带日志管理工具logrotate
以此来记录天天要执行的logrotate的任务nginx

相关文章
相关标签/搜索