يوفر MagicTradeBot دعمًا أصليًا للتكامل مع Grafana Loki وPrometheus Alertmanager — وهما أداتان مفتوحتا المصدر للأرصاد والمراقبة. تتيح هاتان الأداتان تدفق سجلات في الوقت الفعلي، وجمع مقاييس، وإدارة التنبيهات بشكل مركزي عبر جميع مثيلات البوت.
🚀 نظرة عامة
يمكن لمحرك MagicTradeBot الأساسي إرسال السجلات والأحداث من أي مثيل بوت إلى Loki للتخزين والاستعلام، بينما يتولى Prometheus Alertmanager مهام التنبيه الفوري بناءً على شروط مخصصة.
سواء كنت تُشغّل مثيلًا واحدًا أو تدير مئات مثيلات البوت عبر العديد من البورصات والحسابات والخوادم، فتضمن هذه التكاملات وجود رؤية مركزية لكل أنشطة التداول.
🔧 الميزات الرئيسية
- 📡 توجيه السجلات في الوقت الفعلي إلى Grafana Loki
- 📊 جمع المقاييس للإستراتيجيات والصفقات والأداء
- 🚨 تنبيهات مبنية على القواعد عبر Prometheus Alertmanager
- 🌐 دعم تعدد المثيلات والخوادم
- 📈 لوحات تحكم Grafana للتصور الفوري والتصفية
🛠️ المتطلبات المسبقة
- تثبيت وتشغيل حزمة Grafana Loki
- Prometheus يجمع المقاييس من مثيلات البوت
- تهيئة Prometheus Alertmanager للإشعارات (مثل البريد أو Slack أو Webhooks)
- تهيئة مثيلات البوت مع تسميات ونقاط نهاية للسجلات فريدة
⚙️ خطوات التكوين
1. تفعيل تسجيل Loki في إعدادات البوت
حرر ملف التكوين لكل مثيل بوت (مثل config.yaml
أو 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. تفعيل تصدير مقاييس Prometheus
قم بتمكين المُصدر داخل كل مثيل بوت لعرض المقاييس على نقطة نهاية محلية:
metrics:
prometheus:
enabled: true
port: 9100
سيقوم Prometheus بسحب المقاييس من http://localhost:9100/metrics
.
3. أضف هدف البوت إلى إعداد Prometheus
حرر ملف prometheus.yml
لتضمين نقطة نهاية البوت الجديدة:
scrape_configs:
- job_name: "magictradebot"
static_configs:
- targets: ["localhost:9100"]
4. ضبط قواعد التنبيه في Prometheus
حدد قواعد تنبيه مخصصة، مثل:
groups:
- name: BotAlerts
rules:
- alert: HighErrorRate
expr: rate(bot_errors_total[5m]) > 5
for: 1m
labels:
severity: warning
annotations:
summary: "High error rate in MagicTradeBot"
5. ربط Alertmanager
تأكد من أن Prometheus متصل بـ Alertmanager لإرسال الإعلامات عبر القنوات المفضلة لديك.
🧪 مثال لقيد سجل في 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"
}
✅ فوائد تكامل Grafana Loki + Prometheus
- 📍 مراقبة مركزية لكافة أنشطة البوتات
- ⚠️ تنبيهات استباقية لاكتشاف ارتفاع الأخطاء أو الأنماط الشاذة أو التوقف
- 📊 تحليل الاتجاهات التاريخية ولوحات عرض حية في Grafana
- 🔌 قابلية التوسع لنشرات كبيرة عبر مناطق أو بيئات
- 🔍 استعلام سريع وتصفيح السجلات حسب الرمز أو البورصة أو الاستراتيجية