Добавьте обработчики ко всем регистраторам в logging.config.dictConfig - PullRequest
0 голосов
/ 10 февраля 2019

Мы используем функцию dictConfig для настройки наших регистраторов.В настоящее время у меня есть несколько обработчиков, назначенных для корневого регистратора.

Проблема в том, что я не знаю всех имен своих регистраторов в моей конфигурации и хотел бы назначить обработчики для всех регистраторов (которые будут созданы после загрузки конфигурации).

В настоящее время мой конфиг выглядит следующим образом:

LOGGING = {
    'version': 1,
    'disable_existing_loggers': True,
    'formatters': {
        'default': {
            'format': f'%(asctime)s - %(levelname)s - %(name)s - %(message)s'
        },
    },
    'handlers': {
        'console':{
            'level':'DEBUG',
            'class':'logging.StreamHandler',
            'formatter': 'default'
        },
        'Logzio':{
            'class': 'logzio.handler.LogzioHandler',
            'formatter': 'default',
            'token': 'ipbgTelVTXHcDmmFTwyBmGFdIHBFsYdY'
        }
    },
    'loggers': {
        'root': {
            'handlers':['console', 'Logzio'],
            'formatter': 'default',
            'propagate': False,
            'level':'INFO',
        }
    }
}

Затем я настраиваю его в начале моего кода:

logging.config.dictConfig(LOGGING)

Как я могу назначить обработчики для всех моих регистраторов (и не толькокорень)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...