你能改变龙卷风应用程序的日志输出格式吗?

Can you change the log output format for a tornado app?

我有一个龙卷风服务器,每当达到 URL 时自动输出日志,例如:

Jun 10 18:33:49 localhost server: INFO 200 GET /api/v1/profile (108.162.245.195) 0.69ms

我想更改这些消息的格式以包含更多信息,例如用户名:

Jun 10 18:33:49 localhost server: INFO 200 GET /api/v1/profile (108.162.245.195) 0.69ms (nick@hamburger.com)

如何添加此功能?

此消息来自 Application.log_request,因此要更改它,您可以继承 Application 并定义您自己的 log_request 方法。 (如果您不想子类化,也可以将 log_function 作为关键字参数传递给 Application 构造函数)。

RequestHandler 传递给 log_request,因此您可以访问 handler.current_user 或其他方法来收集其他信息以记录。