谷歌应用引擎 python 日志级别降噪
Posted
技术标签:
【中文标题】谷歌应用引擎 python 日志级别降噪【英文标题】:google app engine python log level noise reduction 【发布时间】:2011-05-18 06:41:46 【问题描述】:有谁知道如何减少来自dev_appserver.py
的日志输出的详细程度?
这些日志的噪音水平简直让我发疯。我知道如何在 Java 中使用 log4j 进行这种配置,但在 google app engine python 上我真的迷路了。
【问题讨论】:
【参考方案1】:解决方案 1。
您可以使用logging.setLevel()
指示日志库仅记录处于或给定级别的语句。如果您将此级别阈值设置为高于包含您不想要的消息的级别,那么您将从 dev_appserver 过滤掉不需要的消息。
要显示您的日志消息,您需要执行以下操作之一:
确保至少以您在上面设置的过滤阈值(可能是WARN
)记录您的日志消息。
配置和使用您自己的custom logger。然后,您可以独立于开发服务器使用的根记录器来控制记录器的记录级别。
解决方案 2。
上面的解决方法有点烦人,因为您要么必须避免 DEBUG 和 INFO 级别,要么必须使用创建自己的记录器。
另一个解决方案是从 dev_appserver.py(和相关模块)中注释掉有问题的日志消息。手动操作会很痛苦,但我已经编写了一个工具,它可以替换给定文件夹(及其子文件夹)中所有文件中的日志调用 - 请查看我的帖子 Python logging and performance: how to have your cake and eat it too。
【讨论】:
嘿,谢谢,我认为解决方案 1 对我有用。我真的希望有类似 log4j 的东西,我可以将根记录器设置为“调试”,然后覆盖包含 dev_appserver 的包/文件夹,将其设置为“错误”。 顺便说一句,在我的代码中我应该告诉库 logging.setLevel(logging.ERROR) 或其他什么。是否有 onApplicationStart 的回调或类似的回调将其应用于所有应用程序引擎,以便我可以有选择地覆盖它?谢谢以上是关于谷歌应用引擎 python 日志级别降噪的主要内容,如果未能解决你的问题,请参考以下文章