29 lines
1015 B
Python
29 lines
1015 B
Python
# logger.py
|
|
import logging
|
|
import os
|
|
|
|
# Создаем корневой логгер
|
|
logger = logging.getLogger('parser')
|
|
logger.setLevel(logging.DEBUG) # Уровень по умолчанию: DEBUG и выше
|
|
|
|
# Проверяем, существует ли папка logs
|
|
logs_dir = "logs"
|
|
if not os.path.exists(logs_dir):
|
|
os.makedirs(logs_dir)
|
|
|
|
# Форматтер для записей в логе
|
|
formatter = logging.Formatter(
|
|
'%(asctime)s - %(name)s - %(levelname)s - %(module)s - %(funcName)s - %(lineno)d - %(message)s'
|
|
)
|
|
|
|
# Обработчик для вывода в консоль
|
|
console_handler = logging.StreamHandler()
|
|
console_handler.setLevel(logging.INFO)
|
|
console_handler.setFormatter(formatter)
|
|
logger.addHandler(console_handler)
|
|
|
|
# Обработчик для записи в файл
|
|
file_handler = logging.FileHandler(os.path.join(logs_dir, 'parser.log'), encoding='utf-8')
|
|
file_handler.setLevel(logging.DEBUG)
|
|
file_handler.setFormatter(formatter)
|
|
logger.addHandler(file_handler) |