Linux日志管理神器之Logrotate日志分割,以及crontab定时轮询

2023-01-08

本文主要是 Linux日志管理神器之Logrotate日志分割,以及crontab定时轮询 相关的知识问答,如果你也了解,请帮忙补充。

参考知识1

有些服务,会自动产生大量的日志文件,如果不限制,会占用磁盘空间。

如果单纯的用定时任务crontab删除,又不太灵活,这时需要日志神器logrotate。

logrotate工具是系统自带为了方便进行日志管理而产生的一个工具。

系统会定时运行 logrotate,一般是每天一次。也是基于定时任务crontab运行的。

配置文件:

主配置文件的位置在 /etc/logrotate.conf,一般配置在 /etc/logrotate.d/子目录下。

如系统默认日志配置:


配置文件参数:

更多信息请参考man logrotate帮助文档

模板是通用的,而配置参数则根据你的需求进行调整,不是所有的参数都是必要的。

在上面的配置文件中,我们只想要轮询一个日志文件,size=50M 指定日志文件大小可以增长到 50MB,dateext 指 示让旧日志文件以创建日期命名。

可自行参考/etc/logrotate.d/目录下系统默认的文件。

logrotate命令:

具体 logrotate 命令格式如下:

要为某个特定的配置调用 logrotate:

排障过程中的最佳选择是使用-d选项以预演方式运行 logrotate。要进行验证,不用实际轮循任何日志文件, 可以模拟演练日志轮循并显示其输出。

正如我们从上面的输出结果可以看到的,logrotate 判断该轮循是不必要的。如果文件的时间小于一天,就会发生了。

强制轮循即使轮循条件没有满足,我们也可以通过使用-f选项来强制 logrotate 轮循日志文件,-v参数提供了详细的输出。

个人项目配置:

项目每天可产生20G左右的日志,显示不能做每日轮询,所以额外需要添加定时任务做每小时,或者每隔多少分钟。

如果轮询日志异常报错如下:

error: skipping “” because parent directory has insecure permissions (It’s world writable or writable by group which is not “root”) Set “su” directive in config file to tell logrotate which user/group should be used for rotation.”

需要加 su root root 选项。

同时添加定时任务:

定时任务说明:

第一条,每隔40分钟轮询执行一次logrotate任务。

第二条,每天凌晨4点删除前一天的日志,原因如下:

由于项目系统产生日志格式的原因,会导致以下情况:

如果昨天的分割到4个后(或者1,2,3),时间到第二天后,没法转储递增,会一直停留在4,没法删除,每天会有,久而久之,也会占用磁盘空间。所以需要定时删除。

设置完成

开启定时任务日志,以便查看定时任务是否执行。后续可取消。

重启rsyslog

相似知识
『学了就忘』Linux日志管理 — 3.日志轮替 参考知识1日志轮替最主要的作用就是把旧的日志文件移动并改名,同时建立新的空日志文件,当旧日志文件超出保存的范围之后,就会进行删除。那么旧的日志文件改名之后,如何命名呢?主要依靠/etc/logrota
linux日志文件的管理、备份及日志服务器的搭建 参考知识1日志文件存放目录:/var/log[root@xinglog]#cd/var/log[root@xinglog]#lsmessages:系统日志secure:登录日志————————————
Graylog日志管理介绍——系列(一) 参考知识1Graylog是一个开源的完整的日志管理工具,功能和ELK类似,但又比ELK要简单,相对ELK也有自己的优势,不足之处大概就是扩展性没有ELK架构好。这篇文章里对两者做了一些比较,大家可以参
日志多了怎么管理。 参考知识1朋友,您好。空间里的日志是没有上限的,但超过300篇后,最早发表的100篇日志会被系统自动纳入日志分类下的往期日志里,您打开空间,点日志,就可以在页面右边的日志分类下的往期日志里找到它们了。
管理人员日志 参考知识1日志主要发表在网络,详细介绍一个过程和经历的记录。我整理的管理人员日志,供参考!安全日志理解施工安全日志是从工程开始到竣工,由专职安全员对整个施工过程中的重要生产和技术活动的连续不断的详实记
Sql 2000日志管理 这个问题是由于你在备份的时候,数据库日志文件处于未截断,未收缩状态,即使备份完后达到90M,但还原后仍然为10G.所以你在做备份前,应该首先做下日志备份,截断其中的日志,然后手动收缩数据库,将其日志文
班级管理日志 参考知识1无论是在学校还是在社会中,大家都接触过日志吧,不知不觉中一天又要结束了,想必有很多难忘的瞬间吧,需要认真地为此写一篇日志了。如何写好日志呢?以下是我收集整理的班级管理日志范文,欢迎大家分享。
如何用Spring进行日志管理 可以用springaop进行日志管理,下面是我博客中的内容,项目中也是这么用,只是复杂度更高:第一步:导包,可以参考:spring4项目搭建 还需要添加AspectJ(java中最流行的ao