Linux shell脚本按日期 切割pm2日志

linux shell脚本按日期 切割pm2日志 (解决定时任务pm2命令无法执行问题,原因:没有环境变量)


首先在输入命令echo $PATH 拿到当前系统环境变量


然后在/root/.pm2目录新建cutlog.sh文件(注意:第一句一定要有,设置当前shell脚本里面的环境变量,没有的话pm2命令会无法执行)

PATH=/root/.nvm/versions/node/v6.10.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin

CURPATH=/root/.pm2

OUTPATH=/home/cutLogsDate

mkdir -p $OUTPATH

INPUTPATH=$CURPATH/logs

reloadProcessLogs(){

        logFilesGame="${INPUTPATH}/$1"

        yesterday=`date -d last-day '+%Y%m%d_'$2`

        logOfLastDay=$OUTPATH/$yesterday.log

        mv $logFilesGame $logOfLastDay

        touch $logFilesGame

        echo "切割$1成功"

}

reloadProcessLogs 'game-out-0.log' 'game_out'



pm2 reloadLogs设置定时任务

输入crontab -e命令编辑

0 3 * * * sh /root/.pm2/cutlog.sh

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。