[Supervisor]supervisor监管gunicorn启动DjangoWeb时异常退出

一开始配置

[program:django_web]
command=gunicorn  -w 4 -b 0.0.0.0:8080 superadmin.wsgi:application
directory=.
process_name=%(program_name)s ; process_name expr (default %(program_name)s)
numprocs=1                    ; number of processes copies to start (def 1)
stopsignal=QUIT               ; signal used to kill process (default TERM)
redirect_stderr=true          ; redirect proc stderr to stdout (default false)
stdout_logfile=/tmp/supervisor_superadmin.log
stopasgroup=true
autostart=false
autorestart=false

单独执行  gunicorn -w 4 -b 0.0.0.0:8080 superadmin.wsgi:application 没有问题,

但是使用supervisor监控总是出现exited,查看日志:

43 2018-09-17 16:41:42,009 INFO success: django_web entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
44 2018-09-17 16:41:42,143 INFO exited: django_web (exit status 1; not expected)

说明已经启动,然后竟然自动退出了。- -!

刚开始一直以为是路径问题,改用绝对路径发现报相同的错。

查看该program的日志 stdout_logfile=/tmp/supervisor_superadmin.log:

File "/Library/Python/2.7/site-packages/gunicorn/arbiter.py", line 524, in reap_workers
    raise HaltServer(reason, self.WORKER_BOOT_ERROR)
gunicorn.errors.HaltServer: <HaltServer 'Worker failed to boot.' 3>

继续查!

这个错误的原因就是命令写法错误,或者是配置文件的错误

正确的写法:

gunicorn wsgi:application -b 0.0.0.0:8080 -w 4

这样就可以启动了。

完。

我在这卡了半天啊喂,摔~!

 

posted @ 2018-09-18 11:36  赞美上帝  阅读(1611)  评论(0编辑  收藏  举报