MagicTradeBot admite integración nativa con Sentry, una potente plataforma de monitoreo y rastreo de errores en tiempo real. Esto permite a desarrolladores y operadores enviar datos estructurados de registros y eventos desde cada instancia del bot a Sentry, facilitando la depuración rápida, alertas centralizadas y visibilidad completa del estado del sistema.
Ya sea que ejecutes una única instancia del bot o cientos de bots en múltiples exchanges, cuentas, símbolos o nodos de servidor, Sentry te ayuda a centralizar el monitoreo y a rastrear problemas de forma eficaz. A esta escala, la supervisión manual no es viable — Sentry llena ese vacío con automatización robusta y análisis inteligentes.
🚀 Visión general
Con la integración de Sentry, MagicTradeBot puede capturar automáticamente:
- Excepciones en tiempo de ejecución y errores no controlados
- Fallos en la ejecución de operaciones
- Problemas de conectividad con el exchange
- Registros personalizados y eventos de diagnóstico
Todos los registros y eventos de error se envían en tiempo real a Sentry, permitiéndote:
- Rastrear problemas por instancia, símbolo o exchange
- Analizar trazas de pila, cuellos de botella de rendimiento y frecuencia de errores
- Configurar alertas por correo electrónico, Slack o webhooks para fallos críticos
🔧 Características clave
- 📡 Reporte en tiempo real de excepciones y errores
- 🧠 Captura automática de trazas de pila con metadatos contextuales
- 🌍 Soporte para entornos distribuidos y multi-instancia
- 🕵️ Agrupación de problemas, etiquetado de severidad y seguimiento de versiones
- 📊 Panel centralizado con reglas de alerta e integraciones
🛠️ Requisitos previos
- Una cuenta válida de Sentry y DSN (Nombre de Fuente de Datos)
- SDK de Sentry instalado en el entorno de ejecución de MagicTradeBot
- Bot configurado con
instance_id
otags
únicos para mejor trazabilidad
⚙️ Pasos de configuración
1. Instalar el SDK de Sentry
Instala Sentry para tu entorno de ejecución (por ejemplo, Python, Go, Node.js):
pip install --upgrade sentry-sdk
2. Inicializar Sentry en el código de inicio del bot
Agrega el siguiente fragmento de código para inicializar Sentry:
import sentry_sdk
sentry_sdk.init(
dsn="YOUR_SENTRY_DSN",
environment="production",
release="magictradebot@2.0.0",
traces_sample_rate=1.0,
send_default_pii=True
)
3. Habilitar Sentry en el archivo de configuración
En config.yaml
o appsettings.json
, habilita la integración de Sentry:
monitoring:
sentry:
enabled: true
dsn: "YOUR_SENTRY_DSN"
environment: "production"
release: "magictradebot@2.0.0"
tags:
instance_id: "bot-apac-01"
exchange: "binance"
4. Agregar captura de errores y registros personalizados (opcional)
Puedes reportar errores críticos manualmente de la siguiente manera:
from sentry_sdk import capture_exception
try:
bot.execute_trade()
except Exception as e:
capture_exception(e)
🧪 Ejemplo de evento Sentry
{
"level": "error",
"message": "Trade execution failed",
"timestamp": "2025-06-20T11:25:41Z",
"bot_instance": "bot-us-1",
"symbol": "SOL/USDT",
"exchange": "kucoin",
"exception": {
"type": "InsufficientBalanceError",
"value": "Not enough USDT to place order",
"stacktrace": [...]
}
}
✅ Beneficios de la integración con Sentry
- 📍 Seguimiento centralizado de registros y errores para toda la actividad del bot
- ⚠️ Visibilidad inmediata de fallos, errores de configuración o interrupciones
- 📈 Paneles visuales para frecuencia y tendencias de errores
- 🚨 Integración con alertas por Slack, Teams, correo electrónico y webhooks
- 🔍 Resolución más rápida de incidentes con trazas de pila y breadcrumbs