- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在 python 中有一个多模块包。其中一个模块本质上是一个命令行应用程序。我们将其称为“顶级”模块。另一个模块中有三个类,它们本质上是应用程序的后端。
顶层模块,在它的类的初始化中,执行 logging.basicConfig 以将调试记录到文件中,然后为信息及以上添加控制台记录器。后端类只使用 getLogger(classname),因为当应用程序完全运行时,后端将被顶层命令行前端调用,因此日志记录已经配置好了。
在 Test 类中(从 unittest.TestCase 子类并通过 nose 运行),我只是在设置中运行 testfixtures.LogCapture(),在 tearDown 中运行 testfixtures.LogCapture.uninstall_all(),所有日志记录都被捕获得很好,不费吹灰之力。
在后端测试文件中,我尝试做同样的事情。我在设置中运行 testfixtures.LogCapture,在拆解中运行 uninstall_all。但是,当我为后端运行单元测试时,所有“INFO”级别的日志消息仍然会打印出来。
任何帮助
1) 为什么日志抓取对前端有效,对后端无效
2) 一种优雅的方式,可以在我的后端类中记录和捕获日志,而无需在这些文件中显式设置日志记录。
会很棒。
最佳答案
我在重新配置 Logger 时通过将“disable_existing_loggers”设置为 False 解决了同样的问题:之前的记录器被禁用并且阻止它向 RootLogger 传播日志。
关于python testfixtures.LogCapture 不捕获日志,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26532824/
我在 python 中有一个多模块包。其中一个模块本质上是一个命令行应用程序。我们将其称为“顶级”模块。另一个模块中有三个类,它们本质上是应用程序的后端。 顶层模块,在它的类的初始化中,执行 logg
我是一名优秀的程序员,十分优秀!