【问题标题】:Python logging with thread locals使用线程局部变量进行 Python 日志记录
【发布时间】:2014-04-17 14:36:08
【问题描述】:

我想将用户电子邮件添加到所有网络应用日志。

我可以将电子邮件(取自 cookie 等)存储在 threading.local() 中。但我不能总是确定变量是否存在于线程局部变量中。

有没有办法让我的应用程序中的所有记录器都这样做?

【问题讨论】:

    标签: python django logging thread-local-storage


    【解决方案1】:

    您可以创建一个 logging.Filter() 对象来获取线程局部变量(或不存在时的合适默认值)并将其添加到日志记录中。将该过滤器附加到根记录器,它将在所有日志记录传递给处理程序之前被调用。一旦变量出现在日志记录中,它就可以在用于显示/保存信息的格式化程序中使用。

    【讨论】:

    猜你喜欢
    • 2014-11-06
    • 1970-01-01
    • 2020-07-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-12-04
    • 2020-01-12
    • 2010-12-11
    相关资源
    最近更新 更多