比较实用的日志切割与清理

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服务的状态
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值