Initial commit: Message Gateway project
- FastAPI приложение для отправки мониторинговых алертов в мессенджеры - Поддержка Telegram и MAX/VK - Интеграция с Grafana, Zabbix, AlertManager - Автоматическое создание тикетов в Jira - Управление группами мессенджеров через API - Декораторы для авторизации и скрытия эндпоинтов - Подробная документация в папке docs/ Автор: Сергей Антропов Сайт: https://devops.org.ru
This commit is contained in:
41
app/common/logger.py
Normal file
41
app/common/logger.py
Normal file
@@ -0,0 +1,41 @@
|
||||
"""
|
||||
Настройка логирования приложения.
|
||||
|
||||
Автор: Сергей Антропов
|
||||
Сайт: https://devops.org.ru
|
||||
"""
|
||||
import logging
|
||||
import os
|
||||
from opentelemetry.instrumentation.logging import LoggingInstrumentor
|
||||
|
||||
# Настраиваем уровень логирования сначала
|
||||
logging.basicConfig(
|
||||
level=logging.INFO,
|
||||
format='%(asctime)s - %(name)s - %(levelname)s - %(message)s'
|
||||
)
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
# Настройка логирования с поддержкой OpenTelemetry
|
||||
try:
|
||||
from app.core.config import settings
|
||||
|
||||
if settings.otel_enabled:
|
||||
LoggingInstrumentor().instrument(
|
||||
set_logging_format=True,
|
||||
logging_format='%(levelname)s:\t %(message)s traceID=%(otelTraceID)s spanID=%(otelSpanID)s'
|
||||
)
|
||||
logger.info("OpenTelemetry логирование включено")
|
||||
else:
|
||||
LoggingInstrumentor().instrument(
|
||||
set_logging_format=True,
|
||||
logging_format='%(levelname)s:\t %(message)s'
|
||||
)
|
||||
except Exception as e:
|
||||
logger.warning(f"Ошибка настройки OpenTelemetry логирования: {e}")
|
||||
# Используем базовое логирование
|
||||
LoggingInstrumentor().instrument(
|
||||
set_logging_format=True,
|
||||
logging_format='%(levelname)s:\t %(message)s'
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user