Я пытаюсь настроить свой регистратор, используя dictConfig
для использования другого формата, но, похоже, он не вступает в силу. Ниже приведен код, который у меня есть (я также одновременно пытаюсь подавить журналы из импортированных модулей) -
import logging.config
import requests
logging.config.dictConfig({
'version': 1,
'disable_existing_loggers': True,
'formatters':{'standard': { 'format': "[%(asctime)s] [%(levelname)8s] - %(message)s", 'datefmt':"%d-%b-%Y %I:%M:%S %p"}},
'handlers': {'default': {'level': 'DEBUG', 'formatter': 'standard', 'class': 'logging.StreamHandler', 'stream': 'ext://sys.stdout'}},
'loggers':{'__main__': {'handlers': ['default'], 'level': 'DEBUG', 'propagate': False }}
})
req = requests.get('https://www.google.com')
logging.debug("Only thing that should be printed")
Вывод -
DEBUG:root:Only thing that should be printed
Ожидаемый результат -
[2020-04-04 22:46:24,866] [ DEBUG] - Only thing that should be printed
Я научился использовать dictConfig
из этой ТАК .