Datax日志压缩并定期清理

背景

DataX 是一个进程一个日志,不同于其他日志一天一个日志,合并到一个日志中进行压缩在查看日志时有一定的不便,可以通过脚本的方式对目录进行压缩达到预期的结果

操作步骤

1.进入指定目录,创建脚本(路径/文件名可自定义)

cd  /opt/datax/bin

2.编辑脚本内容(压缩前一天的日志并清理31天前的压缩日志)

vi log_backup.sh
#!/bin/sh 
day=`date --date='1 days ago' "+%Y-%m-%d"`
logPath="/opt/datax/log"

if [ -e "$logPath/$day" ]; then
   find $logPath -type f -name "*.tar.gz" -mtime +31 -exec rm -rf {} \;
   tar -czvf $logPath/$day.tar.gz $logPath/$day
   rm -rf $logPath/$day
fi

-mtime -n +n #按文件更改时间来查找文件,-n指n天以内,+n指n天以前

3.给脚本文件添加执行权限

chmod  +x  /opt/datax/bin/log_backup.sh

4.添加定时任务,下面命令为凌晨两点半执行

crontab -e 
30 2 * * * /opt/datax/bin/log_backup.sh > /dev/null 2>&1

完成以上操作即可,自己进行测试时可以对定时的时间进行调整

你可能感兴趣的:(Datax日志压缩并定期清理)