13

デフォルトのログ ファイルがあったと思いますが、まだ見つかりませんでした。

ときどき HTTP 要求プロセスが画面に例外をスローすることがありますが、これもディスクのどこかに移動することをお勧めします。そうしないと、長時間のテスト中に何が問題なのかわかりません。

PS: 例外ハンドラの作成は別のトピックです。まず、私の質問の答えを知りたいです。

ここで何かを見つけました: https://groups.google.com/forum/?fromgroups=#!topic/python-tornado/px4R8Tkfa9c

しかし、それらのログをどこで見つけることができるかについても言及していませんでした。

4

4 に答える 4

19

デフォルトでは、標準の python ロギング モジュールを使用します。

定義は次のとおりです。

access_log = logging.getLogger("tornado.access")
app_log = logging.getLogger("tornado.application")
gen_log = logging.getLogger("tornado.general")

デフォルトではファイルに書き込みません。Supervisordを使用して実行し、ログ ファイルが配置される Supervisord config で定義できます。竜巻の出力をキャプチャし、ファイルに書き込みます。

また、次のように考えることができます。

tornado.options.options['log_file_prefix'].set('/opt/logs/my_app.log')
tornado.options.parse_command_line()

しかし、この場合 - パフォーマンスを測定します。委任できる場合は、tornado アプリケーションから直接ファイルに書き込むことはお勧めしません。

参考までに: pretty console loggingparse_command_lineを有効にするだけです。

于 2012-09-26T07:41:28.250 に答える
3

新しいバージョンでは、そうすることができます

args = sys.argv
args.append("--log_file_prefix=/opt/logs/my_app.log")
tornado.options.parse_command_line(args)

または@ColeMacleanが述べたように、

--log_file_prefix=PATH 

コマンドラインで

于 2013-04-01T02:31:14.773 に答える
1

デフォルトではログファイルはありません。

--log_file_prefix=PATHコマンド ライン オプションを使用して設定できます。

より複雑なことをしようとしている場合、Tornado はPython stdlib の logging モジュールを使用するだけです。

于 2012-09-26T07:42:05.807 に答える