如果我从命令行启用 --verbose
并且脚本中有以下内容,我想添加调试打印语句测试。
logger.info("test")
我经历了以下问题,但无法得到答案...
最佳答案
我发现 --verbose
(对于用户)和 --debug
(对于开发人员)都很有用。以下是我使用 logging
和 argparse
的方法:
import argparse
import logging
parser = argparse.ArgumentParser()
parser.add_argument(
'-d', '--debug',
help="Print lots of debugging statements",
action="store_const", dest="loglevel", const=logging.DEBUG,
default=logging.WARNING,
)
parser.add_argument(
'-v', '--verbose',
help="Be verbose",
action="store_const", dest="loglevel", const=logging.INFO,
)
args = parser.parse_args()
logging.basicConfig(level=args.loglevel)
所以如果设置了--debug
,那么日志级别设置为DEBUG
。如果 --verbose
,日志记录设置为 INFO
。如果两者都没有,则缺少 --debug
会将日志记录级别设置为默认的 WARNING
。
关于python - 启用详细日志记录的更简单方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14097061/