8

nginx + UWSGI+pythonを実行しているサーバーがあります。UWSGIは、--daemonize /var/log/uwsgi.logすべてのアプリケーションエラーをログに記録するフラグが設定されたデーモンとして実行されています。

エラー時にpythonprintステートメントを使用すると、ログに書き込まれますが、エラーが発生した場合のみであることに気付きました。標準のPythonロギングライブラリは、どのような状況でもログに影響を与えないようです。

UWSGIログを使用するようにPythonログライブラリを指定するにはどうすればよいですか?

4

2 に答える 2

5

uWSGI は wsgi サーバーでありenviron、キーを使用して、それがホストする呼び出し可能なアプリケーションに渡される dictでストリームを渡しますwsgi.errors。裸の wsgi アプリを作成している場合は、そのストリームへの書き込みでうまくいくはずです。wsgi インターフェースを抽象化するフレームワークを使用している場合 (その音からするとprintsys.stdoutデーモン化されたプロセスで閉じられ、ログ ファイルに記録されない .そのフレームワークがエラー ログを処理する方法を調べます。

于 2011-11-05T19:35:14.410 に答える
4

ロギングハンドラとしてlogging.StreamHandlerを使用します

于 2011-11-05T19:16:38.727 に答える