我在哪里可以查看龙卷风的日志文件?

Max*_*Max 12 python tornado

我认为有一个默认的日志文件,但我还没有找到它.

有时HTTP请求进程会在屏幕上抛出异常,但我建议它也会在磁盘上某处或者我不知道在长时间运行测试中出了什么问题.

PS:编写异常处理程序是另一个话题; 首先,我想知道我的问题的答案.

我在这里找到了一些东西:https: //groups.google.com/forum/?fromgroups =#!topic/python-tornado/px4R8Tkfa9c

但它也没有提到我在哪里可以找到这些日志.

Nik*_*nyh 19

它默认使用标准的python日志记录模块.

这是定义:

access_log = logging.getLogger("tornado.access")
app_log = logging.getLogger("tornado.application")
gen_log = logging.getLogger("tornado.general")
Run Code Online (Sandbox Code Playgroud)

默认情况下它不会写入文件.您可以使用supervisord运行它,并在supervisord配置中定义日志文件所在的位置.它将捕获龙卷风的输出并将其写入文件.

你也可以认为这种方式:

tornado.options.options['log_file_prefix'].set('/opt/logs/my_app.log')
tornado.options.parse_command_line()
Run Code Online (Sandbox Code Playgroud)

但在这种情况下 - 衡量绩效.我不建议您直接从龙卷风应用程序写入文件,如果它可以委派.

仅供参考:parse_command_line只需启用漂亮的控制台日志记录.

  • +1 不仅是一个快速解决方案,而且还提供有关如何做得更好的信息!@Ethan:supervisord 使用子进程,而不是阻塞主线程(在将日志条目写入磁盘时)。 (2认同)