1、背景:
在项目上线之后,应用程序就会运行起来,应用程序运行的过程会产生大量的日志,这时候日志文件所占的空间就会非常的巨大,这样会导致空间使用率非常大,这样会有宕机或者是应用程序停止运行的风险存在的,这里时候我们就需要去清理掉日志文件了来释放空间,从而降低宕机或者程序停止运行的风险。但是清理文件的动作是一个重复的操作,同时也是要求实时性非常高,但是日常的工作想做到实时性处理,这个是有难度的,得不到100%的保证,这时候就需要一个定时任务来实现这个动作,从而提升运维工作的质量,减少人工运维的工作量,如下就是介绍设置定时任务来清理日志文件。
2、需求:Linux系统设置定时任务,去清理掉日志文件
条件一:每天在晚上凌晨12点去清理掉7天前的日志文件;
条件二:如果日志文件所在的磁盘的空间使用率到达了80%以上清理掉3天之前的日志文件;
条件三:清理日志文件需包含业务日志,启动日志、错误日志等;
设计思路:
1、首先在Linux上设置定时任务的,所以我们需要采用cron工具;
2、需求是包含了多个条件的,并且存在判断的条件,所以需要利用shell脚本来实现;
3、清理的日志文件是根据时间来判断的需要利用到find命令来实现;
3、开发shell脚本:
1、撰写shell脚本:
[root@tomcat ~]# cat del_log.sh
#!/bin/bash
#author:jiang
#time: 2022/04/15
#mtime: 2022/04/15