【发布时间】:2015-07-08 05:45:51
【问题描述】:
我已将logger 配置为在终端stdout 和文件上打印,这样我就可以拥有可以参考的日志消息存档。
这很容易通过将FileHandler 添加到您的logging 对象来实现。轻松愉快。
我现在想要完成的是让argparse 在遇到解析错误时也将日志记录到同一个文件中,并将日志记录到标准输出。到目前为止,它只打印到stdout。我查看了argparsedocumentation,但找不到任何关于为argparse 设置不同的输出流或管道的信息。
有可能吗?怎么样?
【问题讨论】:
-
@wim 的评论去哪了?提示是通过覆盖
argparse._sys.stderr的值来覆盖argparse模块的标准错误。这实际上有效,但现在它只写入文件而不是标准输出。 -
嗨。我删除了该评论,因为@James Mills 发布了一个更出色的解决方案。
-
@radj 查看我的回复,了解如何重定向
stdout和stderr流,以确保您捕获来自argparser.ArgumentParser的所有输出
标签: python python-2.7 logging argparse