在 Python 中同时将日志写入标准输出和日志文件
控制日志输出对于在 Python 中调试和捕获重要信息至关重要。日志记录模块提供了将消息记录到文件的广泛功能。但是,将日志显示到控制台(标准输出)以便立即可见也是有益的。
解决方案:
确保所有日志消息都输出到标准输出除了指定的日志文件之外,您还可以通过向根记录器添加logging.StreamHandler()来扩展日志记录模块的功能。
实现:
<code class="python">import logging import sys # Capture stdout stdout = sys.stdout # Create a root logger root = logging.getLogger() # Set the logging level (DEBUG in this case) root.setLevel(logging.DEBUG) # Define the StreamHandler handler = logging.StreamHandler(stdout) # Configure the message format formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s') handler.setFormatter(formatter) # Add the StreamHandler to the root logger root.addHandler(handler)</code>
通过此修改,使用 logger.warning、logger.ritic 和 logger.error 等方法记录的所有消息都将写入配置的日志文件并直接显示到 stdout。这简化了故障排除并确保可以轻松地立即访问消息以进行检查。
以上是如何在 Python 中同时记录到标准输出和日志文件?的详细内容。更多信息请关注PHP中文网其他相关文章!