- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个非常简单的结构。但我的两个日志处理程序中只有一个正在从我的模块进行日志记录:
程序.py,支持模块1.py,support_module2.py
#program.py
import support_module1 as SM1
import support_module1 as SM2
log = logging.getLogger(__name__)
logging.basicConfig(
filename='/logs/TestLog.log',
filemode='w',
level='DEBUG',
format="%(asctime)s - %(name)s - %(levelname)s - %(message)s",
handlers=[logging.FileHandler(r'/logs/TestLog.log')])
stdout_handler = logging.StreamHandler(sys.stdout)
stdout_handler.setLevel(logging.INFO)
log.addHandler(stdout_handler)
log.debug("shows in file")
log.info("shows in file and in stdout")
SM1.function1()
SM2.function2()
模块
#support_module1.py
mod1_log = logging.getLogger(__name__)
function1():
mod1_log.debug("shows in file")
mod1_log.info("should show in file and in stdout, but only goes to file")
#support_module2.py
mod2_log = logging.getLogger(__name__)
function2():
mod2_log.debug("shows in file")
mod2_log.info("should show in file and in stdout, but only goes to file")
当我运行时,我得到:
shows in file and in stdout
我期待:
shows in file and in stdout
should show in file and in stdout, but only goes to file
should show in file and in stdout, but only goes to file
有人告诉我我做错了什么吗?
最佳答案
hoefling 完美地解释了原因以及如何解决。谢谢!
In program.py, you are configuring logging.getLogger(name). This will affect only the logger named program.py and thus only log records inside program.py itself. The logging.getLogger(name) inside module1.py will return a different logger named module1.py which is unaffected by the configuration in program.py The fix is very simple - replace logging.getLogger(name) with logging.getLogger() in program.py. This will configure the root logger instead. -hoefling
关于Python 日志记录 StreamHandler 不从模块记录日志,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53563573/
如何将日志重定向到 TextArea?我试过这样获取日志信息: @Override public void initialize(URL arg0, ResourceBundle arg1) {
我有一个 CLI 脚本,它将所有进程记录到一个日志文件中。CLI 的功能之一是通过以下方式上传大文件将其分成几部分并并行上传。在 linux 中,整个过程就像一个魅力,但在 windows 我似乎无法
我有一个非常简单的结构。但我的两个日志处理程序中只有一个正在从我的模块进行日志记录: 程序.py,支持模块1.py,support_module2.py #program.py import supp
我试图在 python 代码执行的运行时删除 StreamHandler。 if (False == consoleOutput):
我正在编写一个 GeoFire 插件,我试图让 Dart 代码中的查询监听器可用,但没有成功。我似乎无法弄清楚如何为 EventChannel 设置 StreamHandler。要了解我的挣扎,您需要
我不知道如何将信息级消息记录到标准输出,但其他所有信息都记录到标准错误。我已经读过这篇 http://docs.python.org/library/logging.html .有什么建议吗? 最佳答
我想使用 python 的 StreamHandler 日志处理程序。我试过的是, import logging import sys mylogger = logging.getLogger("my
我将我的 Python 代码从 Win10 主机迁移到 WS2012R2。令人惊讶的是,它停止正常运行,现在显示警告消息:“UnicodeEncodeError:‘charmap’编解码器无法对位置
我使用多个处理程序,例如 rootLogger = logging.getLogger() rootLogger.basicConfig(filename = logfile, level=loggi
我一直在寻找一个很好的例子来将进程输出和错误流写入日志文件。我使用 apache-commons exec 库来执行我的进程。按照代码示例进行演示 public static int executeC
我有如下设置日志记录: def setUp(): LOG_FORMAT = '%(asctime)s %(levelname)-8s %(name)s %(message)s' #LO
我正在尝试为我的日志文件和流设置不同的记录器级别,并且我(似乎)遵循了演示(https://docs.python.org/3/howto/logging-cookbook.html)到点。但是,在我
重定向正常日志记录的输出工作正常: import contextlib import io import logging std_out_capture = io.StringIO() with co
使用单个 StreamHandler 是否安全?在多处理环境中? 更准确地说,只有一个 StreamHandler 可以简单地将所有进程的日志记录打印到 stdout 吗?像这样,例如: import
我不知道为什么它无法记录该消息,我认为一切都已正确设置。 logging.DEBUG 定义在 logging 模块下 import logging import sys logger = loggin
假设我有如下脚本,我无法编辑它: import logging logger = logging.getLogger('simple_example') logger.setLevel(logging
我有一个普通的 python(非 Django)项目,我正在尝试 tie Raven into the logging setup . 在我们当前的设置下,我们使用一个简单的日志配置: import
我的 Python 应用程序中有一个 RotatingFileHandler 和 StreamHandler 。这是在 docker 容器中的 apache 服务器中运行的。因此,我将 apache
我在基本配置中设置了两个日志处理程序。 FileHandler 记录到文件,StreamHandler 记录到标准输出。 logging.basicConfig( format="%(asct
python 模块 paramiko 抛出一个奇怪的异常,如磁贴上所示。最后我找到了它真正出现的位置,它在模块 logging 中。当我使用 pydev 在 Eclipse 中的行上设置断点,并将行放
我是一名优秀的程序员,十分优秀!