Supporto per estensioni di terze parti: Integrazione Sentry

MagicTradeBot supporta l'integrazione nativa con Sentry — una potente piattaforma per il monitoraggio e il tracciamento degli errori in tempo reale. Ciò consente a sviluppatori e operatori di inviare log ed eventi strutturati da ogni istanza del bot a Sentry, abilitando un debug rapido, notifiche centralizzate e piena visibilità sullo stato del sistema.

Che tu stia eseguendo una singola istanza del bot o centinaia di bot su più exchange, account, simboli o nodi server, Sentry ti aiuta a centralizzare il monitoraggio e a tracciare i problemi in modo efficace. Il controllo manuale non è praticabile su questa scala — Sentry colma questa lacuna con automazione avanzata e informazioni dettagliate.


🚀 Panoramica

Con l'integrazione Sentry, MagicTradeBot può acquisire automaticamente:

  • Eccezioni a runtime ed errori non gestiti
  • Errori nell'esecuzione delle operazioni
  • Problemi di connettività con l'exchange
  • Log personalizzati ed eventi diagnostici

Tutti i log e gli errori vengono inviati a Sentry in tempo reale, permettendoti di:

  • Tracciare i problemi per istanza, simbolo o exchange
  • Analizzare stack trace, colli di bottiglia nelle prestazioni e frequenza degli errori
  • Impostare notifiche via email, Slack o webhook per i guasti critici

🔧 Funzionalità principali

  • 📡 Reporting in tempo reale di eccezioni ed errori
  • 🧠 Acquisizione automatica dello stack trace con metadati contestuali
  • 🌍 Supporto per ambienti multi-istanza e distribuiti
  • 🕵️ Raggruppamento dei problemi, tagging di severità e tracciamento delle release
  • 📊 Dashboard centralizzata con regole di allerta e integrazioni

🛠️ Prerequisiti

  • Un account Sentry valido e un DSN (Data Source Name)
  • SDK di Sentry installato nell'ambiente runtime di MagicTradeBot
  • Bot configurato con un instance_id o tag univoci per migliorare la tracciabilità

⚙️ Passaggi di configurazione

1. Installa il SDK di Sentry

Installa Sentry per il tuo ambiente (es. Python, Go, Node.js):

pip install --upgrade sentry-sdk

2. Inizializza Sentry nel codice di avvio del bot

Aggiungi questo codice per inizializzare 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. Abilita Sentry nel file di configurazione

Nel file config.yaml o appsettings.json, abilita l'integrazione 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. Aggiungi log e cattura errori personalizzati (opzionale)

Puoi segnalare manualmente errori critici in questo modo:

from sentry_sdk import capture_exception

try:
    bot.execute_trade()
except Exception as e:
    capture_exception(e)

🧪 Esempio di payload di 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": [...]
  }
}

✅ Vantaggi dell'integrazione con Sentry

  • 📍 Tracciamento centralizzato dei log e degli errori per tutte le attività del bot
  • ⚠️ Visibilità immediata su errori, configurazioni errate o interruzioni
  • 📈 Dashboard visive per analizzare frequenza e tendenze dei problemi
  • 🚨 Integrazioni di allerta con Slack, Teams, Email, Webhooks
  • 🔍 Risoluzione più rapida degli incidenti grazie a stack trace e breadcrumb

📎 Related Topics