Je trouve que les deux --verbose
(pour les utilisateurs) et --debug
(pour les développeurs) utile. Voici comment je m'y prends avec logging
y 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)
Donc si --debug
est défini, le niveau de journalisation est fixé à DEBUG
. Si --verbose
l'enregistrement est réglé sur INFO
. Si ce n'est pas le cas, le manque de --debug
définit le niveau de journalisation à la valeur par défaut de WARNING
.