So legen Sie die Protokollierungsstufe über die Befehlszeile festPython

Python-Programme
Guest
 So legen Sie die Protokollierungsstufe über die Befehlszeile fest

Post by Guest »

Ich verwende argparse, um die Protokollierungsebene über die Befehlszeile abzurufen und sie dann als Eingabe für logging.basicConfig zu übergeben. Die Art und Weise, wie ich versuche, dies umzusetzen, funktioniert jedoch nicht. Irgendwelche Vorschläge?
Wunschverhalten, über die Befehlszeile:
python main.py -log=DEBUG

Wunschausgabe
DEBUG:__main__: Debug is working

Code
import logging
import argparse

parser = argparse.ArgumentParser()
parser.add_argument("-log", "--log", nargs='+', help="Provide logging level. Example --log debug'")

log_level = parser.parse_args().log
log_level = 'logging.'+log_level[0]
print(log_level)
logging.basicConfig(level=log_level)
logger = logging.getLogger(__name__)
logger.debug(' Debug is working')

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post