[英]Python package called SignalFx, how to get _logger to print to stdout
有一个SignalFx的Python包: 链接到GitHub源
在其中一个文件中,它制作一个使用Python logging
库的_logger
对象。 该程序包包含许多_logger.debug()
语句,这些语句可用于调试连接性问题。
该代码将_logger
实例_logger
全局变量,如下所示:
_logger = logging.getLogger(__name__)
我搜索了一段时间,无法弄清楚如何查看_logger.debug()
的输出。 如何获得_logger
打印到stdout
? 或者,在哪里可以查看日志语句?
先感谢您!
您可能需要在使用SignalFx的应用程序中配置日志记录。 例如,这可能在您的主程序脚本中起作用:
if __name__ == '__main__':
import logging # if not done already
logging.basicConfig(level=logging.DEBUG, format='%(name)s %(message)s')
# and then the rest of your script's code
如果那没有产生结果,则您可能需要提供更多有关如何组织使用SignalFx的代码的信息。
好的,回过头来看一下,我终于有一个基于两个问题的答案:
第一个问题很有用,因为我意识到了为什么软件包使用getLogger(__name__)
。 这也使我意识到我只需要访问该软件包的基本记录器,即signalfx
。
因为我意识到我基本上可以导入的记录,而无需导入第二个答案是有用的_logger
从SignalFx。
我的最终解决方案(在我的代码中)是:
sfx_logger = logging.getLogger("signalfx")
sfx_logger.setLevel(logging.DEBUG)
sfx_logger.addHandler(logging.StreamHandler(sys.stdout))
现在,SignalFx记录器将打印到stdout
,我可以看到所有调试语句!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.