Почему уровень логгера всегда равен нулю? И как я могу получить реальный уровень? - PullRequest
0 голосов
/ 30 апреля 2020

Кто-нибудь знает, почему уровень логгера во всех этих кодах возвращает ноль? Я протестировал в последней Anaconda (по состоянию на февраль 2020 года) и скомпилированный источник python 3.6. Использование Spyder, Pycharm и командной строки. Всегда возвращает 0. Я так понимаю, я делаю что-то не так. Кроме того, как я могу получить фактический уровень? Критическое:

import logging

logging.basicConfig(format='%(asctime)s - %(levelname)s - %(name)s: %(message)s', datefmt='%m/%d/%Y %H:%M:%S', level=logging.CRITICAL)
logger = logging.getLogger(__name__)
print(logger.level)

Ошибка:

import logging

logging.basicConfig(format='%(asctime)s - %(levelname)s - %(name)s: %(message)s', datefmt='%m/%d/%Y %H:%M:%S', level=logging.ERROR)
logger = logging.getLogger(__name__)
print(logger.level)

Предупреждение:

import logging

logging.basicConfig(format='%(asctime)s - %(levelname)s - %(name)s: %(message)s', datefmt='%m/%d/%Y %H:%M:%S', level=logging.WARNING)
logger = logging.getLogger(__name__)
print(logger.level)

Информация

import logging

logging.basicConfig(format='%(asctime)s - %(levelname)s - %(name)s: %(message)s', datefmt='%m/%d/%Y %H:%M:%S', level=logging.INFO)
logger = logging.getLogger(__name__)
print(logger.level)

Отладка:

import logging

logging.basicConfig(format='%(asctime)s - %(levelname)s - %(name)s: %(message)s', datefmt='%m/%d/%Y %H:%M:%S', level=logging.DEBUG)
logger = logging.getLogger(__name__)
print(logger.level)

Notset:

import logging

logging.basicConfig(format='%(asctime)s - %(levelname)s - %(name)s: %(message)s', datefmt='%m/%d/%Y %H:%M:%S', level=logging.NOTSET)
logger = logging.getLogger(__name__)
print(logger.level)

Даже если я передам целое число в качестве уровня. 50:

import logging

logging.basicConfig(format='%(asctime)s - %(levelname)s - %(name)s: %(message)s', datefmt='%m/%d/%Y %H:%M:%S', level=50)
logger = logging.getLogger(__name__)
print(logger.level)

40:

import logging

logging.basicConfig(format='%(asctime)s - %(levelname)s - %(name)s: %(message)s', datefmt='%m/%d/%Y %H:%M:%S', level=40)
logger = logging.getLogger(__name__)
print(logger.level)

30:

import logging

logging.basicConfig(format='%(asctime)s - %(levelname)s - %(name)s: %(message)s', datefmt='%m/%d/%Y %H:%M:%S', level=30)
logger = logging.getLogger(__name__)
print(logger.level)

20:

import logging

logging.basicConfig(format='%(asctime)s - %(levelname)s - %(name)s: %(message)s', datefmt='%m/%d/%Y %H:%M:%S', level=20)
logger = logging.getLogger(__name__)
print(logger.level)

10:

import logging

logging.basicConfig(format='%(asctime)s - %(levelname)s - %(name)s: %(message)s', datefmt='%m/%d/%Y %H:%M:%S', level=10)
logger = logging.getLogger(__name__)
print(logger.level)

0:

import logging

logging.basicConfig(format='%(asctime)s - %(levelname)s - %(name)s: %(message)s', datefmt='%m/%d/%Y %H:%M:%S', level=0)
logger = logging.getLogger(__name__)
print(logger.level)
...