С радостью поделюсь своим опытом использования модуля Python logging для записи логов уровня INFO в отдельный файл.Когда я столкнулся с необходимостью записывать логи своего проекта на уровне INFO, я решил использовать модуль logging в Python. Этот модуль обладает мощными возможностями и позволяет контролировать все аспекты логирования.Первым шагом я импортировал модуль logging⁚
python
import logging
Затем я создал логгер⁚
python
logger logging.getLogger(__name__)
logger.setLevel(logging.INFO)
Здесь я установил уровень логирования INFO, чтобы только сообщения с этим уровнем были записаны в файл. Если вы хотите записывать сообщения другого уровня, вы можете указать его вместо INFO.Далее я создал обработчик, который будет записывать сообщения в файл⁚
python
file_handler logging.FileHandler(‘info.log’)
file_handler.setLevel(logging.INFO)
В этом примере я указал название файла ‘info.log’, в который будут записываться все сообщения с уровнем INFO. Вы можете использовать свое собственное название файла.После этого я создал форматировщик, чтобы указать, как будет выглядеть каждое сообщение лога⁚
python
formatter logging.Formatter(‘%(asctime)s ― %(name)s ― %(levelname)s ― %(message)s’)
file_handler.setFormatter(formatter)
В этом примере я использовал формат ‘%(asctime)s ⎯ %(name)s ⎯ %(levelname)s ⎯ %(message)s’, который содержит дату и время, имя логгера, уровень логирования и само сообщение. Вы можете настроить формат в соответствии с вашими потребностями.Наконец, я добавил обработчик к логгеру⁚
python
logger.addHandler(file_handler)
Теперь все сообщения с уровнем INFO будут записываться в файл ‘info.log’. Вы можете использовать логгер, чтобы записать логи в другой файл с другим уровнем логирования.
Вот и все! Я успешно настроил запись логов уровня INFO в отдельный файл с помощью модуля logging в Python. Это позволило мне точно контролировать, какие сообщения будут записаны в файл и как они будут отформатированы.
Надеюсь, что мой опыт поможет вам настроить запись логов уровня INFO в отдельный файл с помощью Python logging. Удачи!