gpt4 book ai didi

python - 将标准输出重定向到 Python 中的记录器

转载 作者:太空狗 更新时间:2023-10-30 01:16:55 33 4
gpt4 key购买 nike

我可以将所有输出从 stdout 重定向到我使用标准 logging 模块设置的记录器吗?(我有 os.system 调用,我也想查看其输出或偶尔的打印语句)

最佳答案

您可以利用 this post 中的建议,总结如下:

import logging

class LoggerWriter:
def __init__(self, logger, level):
self.logger = logger
self.level = level

def write(self, message):
if message != '\n':
self.logger.log(self.level, message)

def main():
logging.basicConfig(level=logging.DEBUG)
logger = logging.getLogger("demo")
info_fp = LoggerWriter(logger, logging.INFO)
debug_fp = LoggerWriter(logger, logging.DEBUG)
print >> info_fp, "An INFO message"
print >> debug_fp, "A DEBUG message"

if __name__ == "__main__":
main()

运行时,脚本打印:

INFO:demo:An INFO message
DEBUG:demo:An DEBUG message

关于python - 将标准输出重定向到 Python 中的记录器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9410760/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com