为什么gunicorn在旋转日志文件时不将日志写到重新打开的文件中?

时间:2020-05-14 09:50:49

标签: gunicorn logrotate

我的测试场景如下。

  1. 运行gunicorn
    • $ gunicorn main:app --conf=./settings/gunicorn/gunicorn.py
  2. 删除access.log文件
  3. 发送信号USR1,让gunicorn重新打开新的日志access.log文件。
    • kill -USR1 $(cat ./data/pid/gunicorn.pid)
  4. gunicorn写入新的access.log文件。

步骤1〜3似乎按预期方式工作,在access.log收到gunicorn信号后创建了一个新的USR1文件。

但是,gunicorn不再将日志写入新的日志文件。

# gunicorn.py (config)
import multiprocessing

worker_class = 'uvicorn.workers.UvicornWorker'
workers = multiprocessing.cpu_count()
pidfile = './data/pid/gunicorn.pid'
bind = 'unix:./data/socket/auth.sock'
accesslog = './data/log/gunicorn/access.log'
errorlog = './data/log/gunicorn/error.log'

0 个答案:

没有答案