Mapping_ya_tracker/logging_config.py

53 lines
1.4 KiB
Python
Raw Normal View History

import logging
import logging.handlers
import sys
sys.stdin.reconfigure(encoding='utf-8')
sys.stdout.reconfigure(encoding='utf-8')
def setup_logging(name):
""" Создание логгера """
logger = logging.getLogger()
logger.setLevel(logging.DEBUG)
""" Создание обработчика для записи логов в файл """
file_handler = logging.FileHandler(
filename=f"{name}.log",
2023-12-04 11:04:16 +05:00
mode='w',
encoding='utf-8',
delay=True
)
file_handler.setLevel(logging.DEBUG)
""" Создание обработчика для вывода логов на консоль """
console_handler = logging.StreamHandler()
console_handler.setLevel(logging.INFO)
""" Форматтер для вывода в файл """
file_formatter = logging.Formatter(
'%(asctime)s [%(levelname)s] [%(name)s] - %(message)s'
)
""" Форматтер для вывода на консоль """
console_formatter = logging.Formatter(
'%(asctime)s [%(levelname)s] [%(name)s] - %(message)s'
)
""" Добавление форматтеров в обработчики """
file_handler.setFormatter(file_formatter)
console_handler.setFormatter(console_formatter)
""" Добавление обработчиков в логгер """
logger.addHandler(file_handler)
logger.addHandler(console_handler)
return logger