42 lines
1.4 KiB
Python
42 lines
1.4 KiB
Python
import logging
|
|
import sys
|
|
|
|
def setup_logging():
|
|
# Очистка существующих обработчиков
|
|
for handler in logging.root.handlers[:]:
|
|
logging.root.removeHandler(handler)
|
|
|
|
# Настройка формата
|
|
formatter = logging.Formatter(
|
|
'%(asctime)s - %(name)s - %(levelname)s - %(message)s'
|
|
)
|
|
|
|
# Обработчик для вывода в консоль
|
|
console_handler = logging.StreamHandler(sys.stdout)
|
|
console_handler.setFormatter(formatter)
|
|
|
|
# Установка уровня для корневого логгера
|
|
logging.basicConfig(
|
|
level=logging.INFO,
|
|
handlers=[console_handler],
|
|
force=True
|
|
)
|
|
|
|
# Установка уровня для конкретных логгеров
|
|
loggers = [
|
|
'app.routes',
|
|
'app.services',
|
|
'main',
|
|
'__main__'
|
|
]
|
|
|
|
for logger_name in loggers:
|
|
logger = logging.getLogger(logger_name)
|
|
logger.setLevel(logging.INFO)
|
|
# Удаляем существующие обработчики
|
|
for handler in logger.handlers[:]:
|
|
logger.removeHandler(handler)
|
|
# Добавляем наш обработчик
|
|
logger.addHandler(console_handler)
|
|
# Запрещаем передачу родительским логгерам
|
|
logger.propagate = False |