Ведение журнала не создает файл - PullRequest
1 голос
/ 05 февраля 2020

Сейчас я копирую код для проверки модуля логирования python:

import logging

# Gets or creates a logger
logger = logging.getLogger(__name__)  

# set log level
logger.setLevel(logging.WARNING)

# define file handler and set formatter
file_handler = logging.FileHandler('logfile.log')
formatter    = logging.Formatter('%(asctime)s : %(levelname)s : %(name)s : %(message)s')
file_handler.setFormatter(formatter)

# add file handler to logger
logger.addHandler(file_handler)

# Logs
logger.debug('A debug message')
logger.info('An info message')
logger.warning('Something is not right.')
logger.error('A Major error has happened.')
logger.critical('Fatal error. Cannot continue')

И по какой-то причине файл не создан, и я не могу понять, почему ... помогите, пожалуйста! .

Я только что понял, что он даже не входит в консоль, если только я не добавляю что-то после импорта, например "logging.info ('example)" ... ... тогда в консоли появляются журналы #Logs, все еще никакой файл не генерируется ... что происходит

1 Ответ

0 голосов
/ 05 февраля 2020

Добавьте file_handler.setLevel(...) перед регистрацией чего-либо и добавлением обработчика.

# set log level
file_handler.setLevel(logging.WARNING)
# add file handler to logger
logger.addHandler(file_handler)

Таким образом, вы убедитесь, что новый обработчик также получает настройки для определенного уровня.

Каждый обработчик может иметь другой уровень регистрации.

...