Mongodb服务:
先进行日志切割:
//创建日志切割的脚本
vi mongodb-log-rotate.sh
#!/bin/bash
#下方命令是对mongodb服务的日志进行切割,防止单个日志占用太多磁盘
app=mongod #应用程序mongodb
mongodPath=/usr/local/mongodb/bin/ #服务地址
pidArray=$(pidof $mongodPath/$app) #定义变量日志
for pid in $pidArray;do #循环判断执行变量
if [ $pid ]
then
kill -SIGUSR1 $pid
fi
done
exit #结束
日志清理:
vi /usr/local/mongodb/auto-delete-mongodb-1days-ago-log.sh
#!/bin/bash
#使用find命令进行查询删除
find /usr/local/mongodb/logs -mtime +7 -name " *.log.*" -exec rm -rf {} \ ;
//查询logs目录下匹配 *.log.*的都进行删除
//在周期任务中的末尾添加
vi /etc/crontab
10 1 * * * /usr/local/mongodb/mongodb-log-rotate.sh
#每天的1时10分进行日志切割
30 1 * * * /usr/local/mongodb/auto-delete-mongodb-1days-ago-log.sh
#每天的1时30分进行日志清理
Kafka服务
日志清理:
vim auto-delete-kafka-1days-ago-log.sh
#!/bin/bash
find /opt/kafka/kafka2.11/logs -mtime +7 -name "*.log" -exec rm -rf {} \;
find命令指定查询kafka安装目录logs下天数大于7天且是 .log 结尾的进行删除
//添加执行权限
chmod +x auto-delete-kafka-1days-ago-log.sh
在周期任务中末尾添加:
vi /etc/crontab
10 0 * * * /opt/kafka/kafka2.11/auto-delete-kafka-1days-ago-log.sh
#每天的0时10分进行执行清理脚本
systemctl restart crond.service
#重启crontab服务
systemctl reload crond.service
#不重启,在线加载更新的配置
systemctl status crond.service
#查询当前crontab服务的状态