【Python】uwsgi日志切割

crontab设置定时任务

'''
* * * * * 执行任务
第一个* 一小时当中的第几分钟:0-59
第二个* 一天当中的第几个小时:0-23
第三个* 一月当中的第几天:1-31
第四个* 一年当中的第几个月:1-12
第五个* 一周当中的第几个星期:0-7 0,7都代表周日
'''
0 0 * * * sh  /xxx/xxx/touchforlogrotate.sh  #代表每天0点执行脚本 touchforlogrotate.sh

Linux下的命令
$crontab -e 进入编辑页
$a 进入编辑
输入 0 0 * * * sh  /xxx/xxx/touchforlogrotate.sh
按control + c 完成编辑
按shift + : 输入 wq 保存退出

uwsgi.ini配置

其他省略...
# 指定监听文件,修改后重新打开日志
touch-logreopen = /项目路径/script/.touchforlogrotate
# 设置日志目录 每天创建一个日志
log-reopen = true

touchforlogrotate.sh配置

#!/bin/bash

# .sh根目录
DIR=`echo $(cd "$(dirname "$0")"; pwd)`

# 准备存放日志的目录文件夹
LOGDIR="${DIR}/logs"

# 源目标日志
sourcelogpath="${DIR}/uwsgi.log"

# 移动后准备创建的日志
touchfile="${DIR}/uwsgi.log"

# 准备创建的空白语句,uwsgi.ini监听这里
logwrite="${DIR}/.touchforlogrotate"

# 日志的时间格式化
DATE=`date -d "yesterday" +"%y%m%d"`
# 移动后的日志名称
destlogpath="${LOGDIR}/uwsgi-${DATE}.log"

# 移动
mv $sourcelogpath $destlogpath

# 创建新的日志
touch $touchfile

# 调用引起uwsgi.ini监听
touch $logwrite

你可能感兴趣的:(【Python】uwsgi日志切割)