【问题标题】:Enable Tornado client debug log/mode启用 Tornado 客户端调试日志/模式
【发布时间】:2017-05-13 19:37:29
【问题描述】:

如何使用 Tornado client 启用任何调试日志?

对于服务器案例,您只需将 Debug=true 传递给 Application 构造函数(请参阅here)。但是客户端呢?

从这个doc,在“客户端支持”下,似乎是正确的,也是唯一的?创建客户端的方法是调用 websocket_connect 方法。有没有不同的方法来创建客户端?

这是我尝试过的:

通过:

--logging=debug --log-file-prefix=/var/log/tlog

在命令行上使用

tornado.options.parse_command_line()

创建了一个名为 tlog 的文件,但它始终为空。

设置:

define("debug", True)

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

在我的代码中。

(请参阅post,了解我正在尝试调试的具体问题和我当前的代码)

【问题讨论】:

  • 文档说“如果你将 debug=True 传递给 Application 构造函数,应用程序将在调试/开发模式下运行。”
  • @JacobIRR 是的,我已经看到了,但是这里我没有应用程序。我认为文档是指服务器部分。我错过了什么吗?我也可以创建客户端应用程序吗?

标签: python debugging logging tornado


【解决方案1】:

Application(debug=True) 选项与调试日志没有任何关系。日志记录由--logging 标志(如果您使用parse_command_line())控制,--logging=debug 将其设置为最详细的级别。客户端 websocket 代码中只有很少的日志记录行;如果您看到空的日志文件,那么您只是没有点击任何一个。您可以通过在parse_command_line 之后添加对logging.debug() 的调用到您自己的代码来验证这一点。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-02-08
    • 1970-01-01
    • 2019-10-19
    • 1970-01-01
    相关资源
    最近更新 更多