用户警告的Stacktrace

时间:2017-08-08 08:01:15

标签: python warnings

我在日志中看到这样的警告:

py.warnings.__init__: WARNING .../bs4/__init__.py:219: UserWarning: "foo" 
  looks like a filename, not markup. You should probably open this file 
  and pass the filehandle into Beautiful Soup

此消息没有多大帮助。

我希望看到堆栈跟踪发生这种情况。

请不要查看此警告的内容。这个问题不是关于美丽的汤: - )

一个简单的解决方案是修改第三方代码(第219行bs4/__init__.py)并添加如下内容:

import traceback
logger.warn('Exc at ...\n%s' % ''.join(traceback.format_stack()))

但我想避免这种情况。原因:

  • 这是来自生产系统的警告。我不想改变消息来源。
  • 下次发生这样的警告时,我希望立即看到堆栈跟踪

我是否可以更改python的标志或设置,不仅可以查看一行,还可以查看while stacktrace?我需要上面的帧来调试它。

在此环境中使用Python 2.7。

0 个答案:

没有答案