Linux服务器进行Django项目的uwsgi日志转储

在Linux下部署Django项目后,通常都是通过nginx+uwsgi进行服务部署的,在服务运行后产生的uwsgi.log日志也是会越来越大,久而久之,就会影响服务的访问速度。下面介绍一种利用Linux的crontab定时任务进行日志文件转储的方法。

1、创建uwsgi.log日志以及其转储日志的路径

/mnt/logs/uwsgi_log/  # uwsgi.log日志路径
/mnt/logs/uwsgi_log/back/  # uwsgi.log转储日志路径

2、修改uwsgi.ini的日志存储路径

daemonize=/mnt/logs/uwsgi_log/uwsgi.log

3、创建logrotate.conf文件,用于系统crontab调用,文件内容如下。

/mnt/logs/uwsgi_log/uwsgi.log  # 原日志路径
{
    daily  # 转储形式,按天转储
    rotate 30  # 保留的转储文件数量
    ifempty
    nocompress
    missingok
    copytruncate
    dateext
    dateformat .%Y%m%d  # 转储后的文件命名
    olddir /mnt/logs/uwsgi_log/back/  # 转储路径 
}

4、在crontab中添加定时任务

首先使用命令crontab -e 进入定时任务编辑
在这里插入图片描述
如上图,任务将在0点0分执行,第一个0表示分钟,第二个0表示小时。
完成后 ctrl+X 保存,Shift+Y 、Enter退出,可先将执行时间改成临近时间,测试日志转储是否成功。

5、查看定时执行情况

  • 查看执行日志 tail -f /var/log/cron.log
  • 查看定时任务列表 crontab -l

猜你喜欢

转载自blog.csdn.net/DearestFriend/article/details/108574528