Integración de Grafana Loki + Prometheus Alertmanager

MagicTradeBot ofrece soporte nativo para integrarse con Grafana Loki y Prometheus Alertmanager, dos potentes herramientas de observabilidad de código abierto. Esta integración permite la transmisión centralizada en tiempo real de registros, recolección de métricas y gestión de alertas en todas las instancias del bot.


🚀 Visión general

El motor central de MagicTradeBot puede enviar registros y eventos desde cualquier instancia del bot hacia Loki para su almacenamiento y consulta, mientras que Prometheus Alertmanager gestiona las alertas en tiempo real basadas en condiciones personalizadas.

Ya sea que estés operando una sola instancia o gestionando cientos de instancias de bots en diferentes exchanges, cuentas y servidores, esta integración te proporciona una vista centralizada de toda la actividad de trading.


🔧 Funcionalidades clave

  • 📡 Transmisión de registros en tiempo real a Grafana Loki
  • 📊 Recolección de métricas para estrategias, operaciones y rendimiento
  • 🚨 Alertas basadas en reglas mediante Prometheus Alertmanager
  • 🌐 Soporte para múltiples instancias y servidores
  • 📈 Tableros de Grafana para visualización y filtrado en tiempo real

🛠️ Requisitos previos

  • Pila de Grafana Loki desplegada y en funcionamiento
  • Servidor Prometheus recolectando métricas de las instancias del bot
  • Prometheus Alertmanager configurado para enviar notificaciones (por ejemplo, Email, Slack, Webhooks)
  • Instancias del bot configuradas con etiquetas únicas y endpoints de registro

⚙️ Pasos de configuración

1. Habilitar el registro de Loki en la configuración del bot

Edita el archivo de configuración de cada instancia del bot (por ejemplo, config.yaml o appsettings.json):

logging:
  loki:
    enabled: true
    endpoint: "http://your-loki-server:3100/loki/api/v1/push"
    labels:
      bot_instance: "bot-eu-1"
      exchange: "binance"
      environment: "production"
    log_level: "info"

2. Habilitar la exportación de métricas de Prometheus

Habilita el exportador de Prometheus en cada instancia del bot para exponer métricas en un endpoint local:

metrics:
  prometheus:
    enabled: true
    port: 9100

Prometheus recogerá métricas desde http://localhost:9100/metrics.

3. Añadir el objetivo del bot a la configuración de Prometheus

Edita tu archivo prometheus.yml para incluir el nuevo endpoint del bot:

scrape_configs:
  - job_name: "magictradebot"
    static_configs:
      - targets: ["localhost:9100"]

4. Configurar reglas de alerta en Prometheus

Define reglas de alerta personalizadas, por ejemplo:

groups:
  - name: BotAlerts
    rules:
      - alert: HighErrorRate
        expr: rate(bot_errors_total[5m]) > 5
        for: 1m
        labels:
          severity: warning
        annotations:
          summary: "Alta tasa de errores detectada en MagicTradeBot"

5. Conectar con Alertmanager

Asegúrate de que Prometheus esté conectado a Alertmanager para enviar notificaciones por el canal de tu preferencia.


🧪 Ejemplo de entrada de registro de Loki

{
  "timestamp": "2025-06-20T09:32:10Z",
  "level": "info",
  "message": "Executed long trade",
  "exchange": "binance",
  "symbol": "ETH/USDT",
  "strategy": "Breakout",
  "profit": 5.12,
  "bot_instance": "bot-eu-2"
}

✅ Beneficios de la integración con Grafana Loki + Prometheus

  • 📍 Observabilidad centralizada de toda la actividad del bot
  • ⚠️ Alertas proactivas por errores, anomalías o caídas
  • 📊 Análisis de tendencias históricas y tableros en tiempo real con Grafana
  • 🔌 Escalabilidad para despliegues grandes en distintas regiones o entornos
  • 🔍 Consultas rápidas y filtrado de registros por símbolo, exchange o estrategia

📎 Related Topics