私はgunicornで働いているWerkzeugアプリケーションを持っています。スクリプトディレクトリのレイアウトは次のようになります。アプリケーションコードからGunicornの設定パラメータにアクセスするには?
prj/
__init__.py
application.py :which has a WSGI application object "wsgi_app".
settings_app.py :settings for werkzeug applicaiton code.
次に、私は通常、次のコマンドラインを使用してgunicornでWerkzeugアプリケーションを起動します。
$ gunicorn --worker-class=gevent --bind=0.0.0.0:80 --workers=5 --daemon [--debug] prj.application:wsgi_app
"--debug"の場合、gunicornはデバッグをオンにします。 gunicornの "debug"変数はgunicorn自身の動作にのみ影響するため、 "settings_app.py"に "DEBUG"変数を入れてアプリケーションの動作(ログレベル、テンプレートディレクトリなど)を変更します。私はそれがドライではないと感じます。さらに、コマンドラインの "debug"オプションは、後の "DEBUG"変数を上書きすることはできません。
アプリケーションコードでgunicornの構成変数を参照できる場合は、そのような変数の複製を省略することができます。
アプリケーションコードからgunicornの設定変数にアクセスするにはどうすればよいですか?
ありがとうございました。
ありがとうございました。わかっている。 あなたが言ったように、ガンコーンはいくつかのフックを持っています。私はいくつかのgunicornフック( "post_form"または "pre_request"?)によってWerkwzug WSGIアプリケーションにgunicorn構成クラスインスタンスをバインドすることができるかもしれません。私はそれをチェックするだろう。 – takaomag
私はoptparseとargparseを忘れていました。どちらもgunicornのコマンドラインオプションと引数を解析できます。したがって、現在のgunicornのパラメータをアプリケーションコードで取得できます。 – takaomag