O MagicTradeBot oferece suporte nativo para integração com o Grafana Loki e o Prometheus Alertmanager — poderosas ferramentas de observabilidade de código aberto. Essa integração permite o streaming centralizado em tempo real de logs, coleta de métricas e gerenciamento de alertas em todas as instâncias do bot.
🚀 Visão Geral
O mecanismo central do MagicTradeBot pode encaminhar logs e eventos de qualquer instância do bot para o Loki para armazenamento e consultas, enquanto o Prometheus Alertmanager lida com alertas em tempo real com base em condições personalizadas.
Seja operando uma única instância ou gerenciando centenas de instâncias de bot em diversas exchanges, contas e servidores, essa integração garante uma visão centralizada de todas as atividades de negociação.
🔧 Principais Funcionalidades
- 📡 Transmissão de logs em tempo real para o Grafana Loki
- 📊 Coleta de métricas para estratégias, negociações e desempenho
- 🚨 Alertas baseados em regras via Prometheus Alertmanager
- 🌐 Suporte a múltiplas instâncias e servidores
- 📈 Dashboards do Grafana para visualização e filtragem em tempo real
🛠️ Pré-requisitos
- Pilha do Grafana Loki implantada e em execução
- Servidor Prometheus coletando métricas das instâncias do bot
- Prometheus Alertmanager configurado para enviar notificações (ex: Email, Slack, Webhooks)
- Instâncias do bot configuradas com rótulos únicos e endpoints de log
⚙️ Etapas de Configuração
1. Ativar o Log para o Loki na Configuração do Bot
Edite o arquivo de configuração de cada instância do bot (ex: config.yaml
ou 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. Ativar Exportação de Métricas do Prometheus
Ative o exportador Prometheus em cada instância do bot para expor métricas em um endpoint local:
metrics:
prometheus:
enabled: true
port: 9100
O Prometheus fará o scrape das métricas em http://localhost:9100/metrics
.
3. Adicionar o Bot na Configuração do Prometheus
Edite o arquivo prometheus.yml
para incluir o novo endpoint do bot:
scrape_configs:
- job_name: "magictradebot"
static_configs:
- targets: ["localhost:9100"]
4. Definir Regras de Alerta no Prometheus
Defina regras de alerta personalizadas, por exemplo:
groups:
- name: BotAlerts
rules:
- alert: HighErrorRate
expr: rate(bot_errors_total[5m]) > 5
for: 1m
labels:
severity: warning
annotations:
summary: "Taxa de erro alta detectada no MagicTradeBot"
5. Conectar ao Alertmanager
Garanta que o Prometheus esteja conectado ao Alertmanager para enviar notificações pelo canal desejado.
🧪 Exemplo de Log no 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"
}
✅ Benefícios da Integração com Grafana Loki + Prometheus
- 📍 Observabilidade centralizada para todas as atividades do bot
- ⚠️ Alertas proativos para picos de erro, anomalias de negociação ou tempo de inatividade
- 📊 Análise histórica de tendências e dashboards em tempo real com Grafana
- 🔌 Escalável para grandes implantações em diferentes regiões ou ambientes
- 🔍 Consultas rápidas e filtragem de logs por símbolo, exchange ou estratégia