1. ホーム
  2. python

[解決済み] 冗長ロギングを有効にする簡単な方法

2023-06-07 18:48:44

質問

デバッグ印刷文のテストを追加したい。 --verbose を有効にし、スクリプトに次のように記述します。

logger.info("test")

以下の質問を一通りこなしましたが、答えが出ませんでした...。

どのように解決するのですか?

の知恵を結集する必要があります。 Argparseチュートリアル PythonのロギングHOWTO . 以下はその例です...

> cat verbose.py 
#!/usr/bin/env python

import argparse
import logging

parser = argparse.ArgumentParser(
    description='A test script for http://stackoverflow.com/q/14097061/78845'
)
parser.add_argument("-v", "--verbose", help="increase output verbosity",
                    action="store_true")

args = parser.parse_args()
if args.verbose:
    logging.basicConfig(level=logging.DEBUG)

logging.debug('Only shown in debug mode')

ヘルプを実行します。

> ./verbose.py -h
usage: verbose.py [-h] [-v]

A test script for http://stackoverflow.com/q/14097061/78845

optional arguments:
  -h, --help     show this help message and exit
  -v, --verbose  increase output verbosity

冗長モードで実行中。

> ./verbose.py -v
DEBUG:root:Only shown in debug mode

サイレントで実行中。

> ./verbose.py   
>