انتقل إلى المحتوى الرئيسي

MODULE 11 - Spring Boot Actuator والمراقبة

مرحبًا بكم في الوحدة 11! 📊​

تطبيقك في الإنتاج... لكن كيف تعرف إذا كان يعمل بشكل صحيح؟ هل هو بطيء؟ هل يفتقر إلى الذاكرة؟ Spring Boot Actuator يمنحك العيون لمراقبة تطبيقك.


🎓 أهداف التعلم​

في نهاية هذه الوحدة، ستكون قادرًا على:

  1. ✅ تكوين Spring Boot Actuator
  2. ✅ استخدام نقاط النهاية للمراقبة
  3. ✅ إنشاء فحوصات صحية مخصصة
  4. ✅ جمع وعرض المقاييس
  5. ✅ دمج Prometheus وGrafana

📚 المتطلبات الأساسية​

قبل بدء هذه الوحدة، يجب أن تكون قد:

  • ✅ أكملت الوحدات من 1 إلى 10
  • ✅ فهمت أساسيات HTTP
  • ✅ لديك Docker مثبت (لـ Prometheus/Grafana)
  • ✅ تعرف مفاهيم المراقبة الأساسية

🗺️ خطة الوحدة​

الجزء النظري (4 فصول)​

الفصل 1: مقدمة في Actuator​

المدة: 30 دقيقة

المحتوى:

  • ما هو Actuator؟
  • التثبيت والتكوين
  • أمان نقاط النهاية
  • الخطوات الأولى

لماذا هو مهم؟ فهم الأداة الأساسية


الفصل 2: نقاط النهاية​

المدة: 45 دقيقة

المحتوى:

  • /health, /info, /env
  • /beans, /mappings, /conditions
  • /loggers, /heapdump, /threaddump
  • نقاط النهاية المخصصة

لماذا هو مهم؟ تشخيص تطبيقك


الفصل 3: المقاييس مع Micrometer​

المدة: 1 ساعة

المحتوى:

  • Micrometer والسجلات
  • Counter, Gauge, Timer, Summary
  • مقاييس JVM, HTTP, Database
  • مقاييس مخصصة
  • العلامات والأبعاد

لماذا هو مهم؟ قياس الأداء


الفصل 4: الفحوصات الصحية​

المدة: 45 دقيقة

المحتوى:

  • مؤشرات الصحة الأصلية
  • الفحوصات الصحية المخصصة
  • مجموعات الصحة
  • Liveness vs Readiness (Kubernetes)

لماذا هو مهم؟ اكتشاف المشاكل


الجزء العملي (2 تدريبات)​

TP11.1: تكوين Actuator​

المدة: 1 ساعة و30 دقيقة

الهدف: تكوين Actuator لتطبيق

ستقوم بـ:

  • تفعيل وتأمين نقاط النهاية
  • إنشاء فحوصات صحية مخصصة
  • إضافة معلومات التطبيق
  • اختبار جميع نقاط النهاية

TP11.2: المراقبة مع Prometheus وGrafana​

المدة: 1 ساعة و30 دقيقة

الهدف: إعداد مجموعة مراقبة كاملة

ستقوم بـ:

  • تكوين Prometheus
  • إنشاء لوحات تحكم Grafana
  • إضافة مقاييس الأعمال
  • تكوين التنبيهات

📊 المدة الإجمالية​

النوعالمدة
النظرية3 ساعات (4 فصول)
العملية3 ساعات (2 تدريبات)
الإجمالي6 ساعات (~2 جلسات)

🎯 ما الذي ستفهمه​

قبل هذه الوحدة​

// التطبيق في الإنتاج... 🤞
// "هل يعمل؟"
// "لا أعلم، المستخدمون لا يشتكون..."
// "كم من الذاكرة نستخدم؟"
// "لا فكرة..."

بعد هذه الوحدة​

# التحقق من الصحة
curl http://localhost:8080/actuator/health
{
"status": "UP",
"components": {
"db": { "status": "UP" },
"diskSpace": { "status": "UP" },
"redis": { "status": "UP" }
}
}

# رؤية المقاييس
curl http://localhost:8080/actuator/metrics/http.server.requests
{
"name": "http.server.requests",
"measurements": [
{ "statistic": "COUNT", "value": 1523 },
{ "statistic": "TOTAL_TIME", "value": 45.2 }
]
}

لوحة تحكم Grafana:

┌─────────────────────────────────────────────┐
│ 📊 لوحة تحكم التطبيق │
├──────────────┬──────────────┬───────────────┤
│ Requests/sec │ Latency P99 │ Error Rate │
│ 125 │ 45ms │ 0.1% │
├──────────────┴──────────────┴───────────────┤
│ [Graph: Request Rate over Time] │
│ [Graph: JVM Memory Usage] │
│ [Graph: Database Connection Pool] │
└─────────────────────────────────────────────┘

🚀 لماذا هذه الوحدة أساسية​

1. الرؤية في الإنتاج​

بدون Actuator:
- "التطبيق بطيء" → لماذا؟
- "لا يعمل" → منذ متى؟ ماذا تغير؟
- "لدينا مشكلة ذاكرة" → حقًا؟

مع Actuator:
- مقاييس في الوقت الحقيقي
- تاريخ الأداء
- تنبيهات استباقية

2. DevOps وSRE​

Kubernetes Health Probes:
livenessProbe:
httpGet:
path: /actuator/health/liveness
readinessProbe:
httpGet:
path: /actuator/health/readiness

→ إعادة التشغيل التلقائي إذا مات التطبيق
→ قطع الحركة إذا لم يكن التطبيق جاهزًا

3. مهارة مطلوبة​

عروض العمل:
✓ "خبرة مع Prometheus/Grafana"
✓ "إعداد المراقبة"
✓ "قابلية مراقبة التطبيقات"
✓ "Spring Boot Actuator"

🗺️ التقدم في التدريب​

الوحدة 11 = مراقبة تطبيقك في الإنتاج!


📖 كيفية التعامل مع هذه الوحدة​

التقدم الموصى به​

  1. الفصل 1 → تثبيت وتكوين Actuator
  2. الفصل 2 → استكشاف نقاط النهاية
  3. TP11.1 → ممارسة التكوين
  4. الفصل 3-4 → المقاييس والصحة
  5. TP11.2 → مجموعة كاملة Prometheus/Grafana

✅ التقييم الذاتي​

قبل البدء، أجب:

  1. هل تعرف ما هو Spring Boot Actuator؟ ☐ نعم ☐ لا
  2. هل تعرف Prometheus؟ ☐ نعم ☐ لا
  3. هل استخدمت Grafana من قبل؟ ☐ نعم ☐ لا
  4. هل تعرف ما هو الفحص الصحي؟ ☐ نعم ☐ لا

هذه الوحدة ستجعلك خبيرًا في جميع هذه المواضيع!


🎯 الخطوة التالية​

جاهز لجعل تطبيقك قابلًا للمراقبة؟

➡️ ابدأ مع الفصل 1: مقدمة في Actuator


⬅️ العودة إلى خطة الدورة