@jeromy_ruecker
Для задания всех уровней логирования в Python можно использовать следующий код:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
import logging # Создание объекта логгера logger = logging.getLogger() # Задание уровня логирования logger.setLevel(logging.NOTSET) # Задание формата вывода formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s') # Создание обработчика для вывода в консоль console_handler = logging.StreamHandler() console_handler.setLevel(logging.NOTSET) console_handler.setFormatter(formatter) logger.addHandler(console_handler) # Создание обработчика для вывода в файл file_handler = logging.FileHandler('log.txt') file_handler.setLevel(logging.NOTSET) file_handler.setFormatter(formatter) logger.addHandler(file_handler) # Логирование с использованием разных уровней logger.debug('This is a debug message') logger.info('This is an info message') logger.warning('This is a warning message') logger.error('This is an error message') logger.critical('This is a critical message') |
В данном примере используется объект logger
для логирования сообщений. Сначала устанавливается уровень логирования NOTSET
, который позволяет выводить все сообщения. Затем создаются обработчики для вывода сообщений в консоль и в файл. Оба обработчика устанавливают уровень логирования NOTSET
и задают формат вывода с помощью объекта Formatter
. Наконец, каждое сообщение логируется с использованием соответствующих методов (debug
, info
, warning
, error
, critical
) объекта logger
.