ご挨拶とご挨拶、
gunicorn + nginx およびスーパーバイザーを使用して、Ubuntu VPS で Flask アプリを実行しようとしています。ssh 経由で vps にログインすると、すべてが機能します。ログアウトすると、ゲートウェイが正しくありません。
gunicorn のエラー ログには、次の情報が表示されます。
Traceback (most recent call last):
File "/home/michael/dev/myapp/env/local/lib/python2.7/site-packages/gunicorn/workers/sync.py", line 131, in handle_request
File "/home/michael/dev/myapp/env/local/lib/python2.7/site-packages/flask/app.py", line 1836, in __call__
File "/home/michael/dev/myapp/env/local/lib/python2.7/site-packages/werkzeug/contrib/fixers.py", line 144, in __call__
File "/home/michael/dev/myapp/env/local/lib/python2.7/site-packages/flask/app.py", line 1820, in wsgi_app
File "/home/michael/dev/myapp/env/local/lib/python2.7/site-packages/flask/app.py", line 1407, in handle_exception
File "/home/michael/dev/myapp/env/local/lib/python2.7/site-packages/flask/app.py", line 1420, in log_exception
File "/home/michael/dev/myapp/env/local/lib/python2.7/site-packages/flask/app.py", line 582, in logger
ImportError: No module named logging
これは私には本当に奇妙に思えます。Flask は、python 独自のログ モジュールを使用します。モジュールを Python シェルにインポートできます。また、virtualenv ですべてを実行します。
参考までに、私のsupervisor.conf:
[program:gunicorn]
directory = /home/michael/dev/myapp
user=michael
command = /home/michael/dev/myapp/env/bin/gunicorn mpn:app
directory = /home/michael/dev/myapp
environment=PATH="/home/michael/dev/myapp/env/bin"
autostart=true
autorestart=true
redirect_stderr=True
stdout_logfile = /home/michael/dev/myapp/logs/supervisor.log
stderr_logfile = /home/michael/dev/myapp/logs/supervisor_error.log
誰かが私を助けてくれることを願っています。これをstackover-google-maillist-ingするのに何時間も費やしました。
編集:
Debian に切り替えたところ、この問題は発生しなくなりましたが、まだ解決策に興味があります。