/
developer_atatanoff
/
simple_auth_fastapi
Обзор
Документация
Войти
/
developer_atatanoff
/
simple_auth_fastapi
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
config/logger.py
41 строка
1 KB
Alexey N. Tatanoff
first_commit
28 ноя 2025, 13:12
28 ноя 2025, 13:12
40027ac
Код
Авторство
О чём код?
import logging import logging.handlers from config.settings import settings class Format(logging.Formatter): COLORS = {'DEBUG': '\033[94m', 'INFO': '\033[92m', 'WARNING': '\033[93m', 'ERROR': '\033[91m', 'CRITICAL': '\033[95m'} def format(self, record): log_fmt = f"{self.COLORS.get(record.levelname, '')} %(asctime)s :: %(levelname)-8s - %(filename)-12s %(lineno)-5d\n%(message)s\033[0m\n" formatter = logging.Formatter(log_fmt) return formatter.format(record) class FormatFile(Format): def format(self, record): log_fmt = f"{self.COLORS.get(record.levelname, '')} %(asctime)s - %(filename)-12s %(lineno)-5d - %(levelname)-8s %(message)s \033[0m\n" formatter = logging.Formatter(log_fmt) return formatter.format(record) def get_logger(): logger = logging.getLogger(__name__) logger.setLevel(logging.DEBUG) file_handler = logging.handlers.RotatingFileHandler( settings.LOG_FILE, maxBytes=settings.MAX_BYTES, backupCount=settings.BACKUP_COUNT) file_handler.setLevel(logging.ERROR) file_handler.setFormatter(FormatFile()) stream_handler = logging.StreamHandler() stream_handler.setLevel(logging.DEBUG if settings.DEBUG else logging.ERROR) stream_handler.setFormatter(Format()) logger.addHandler(file_handler) logger.addHandler(stream_handler) return logger logger = get_logger()