Python日志Python解释器输出

2024-10-06 18:18:26 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图构建一个记录器,它还记录python解释器的完整输出,这是您通常在控制台上看到的。在

这是我的建议,没用。在

logger = logging.getLogger()
stdoutStreamHandler = logging.StreamHandler(sys.stdout)
stderrStreamHandler = logging.StreamHandler(sys.stderr)
fileHandler = logging.FileHandler(logpath)
logger.addHandler(stdoutStreamHandler)
logger.addHandler(stderrStreamHandler)

Tags: loggingstderrstdoutsys记录logger解释器建议
1条回答
网友
1楼 · 发布于 2024-10-06 18:18:26

不确定记录Python解释器的完整输出是什么意思,您是指命令行解释器还是运行时的后台解释器?在

不管怎样,这都可能有帮助:trace

这将允许您使用跟踪执行任何代码,并允许您将其写入文件:

import sys
import trace

# create a Trace object, telling it what to ignore, and whether to
# do tracing or line-counting or both.
tracer = trace.Trace(
    ignoredirs=[sys.prefix, sys.exec_prefix],
    trace=0,
    count=1)

# run the new command using the given tracer
tracer.run('main()')

# make a report, placing output in the current directory
r = tracer.results()
r.write_results(show_missing=True, coverdir=".")

我自己还没有用过它,但它有可能被执行

logger.debug(r)

这将在您的日志文件中创建一个调试日志级别的记录,当然,您可以将其更改为info、warning、error或critical。在

相关问题 更多 >