הגדרת הפרויקט

זהו הפרויקט המסכם של הפרויקט הצוותי כולו: הצוות (4 חברים) צריך להריץ את כל ארבעת השירותים (Collector, Analyzer, Alert, Dashboard) יחד עם docker-compose (במקום docker run נפרד לכל אחד), לאמת זרימת אירוע קצה-לקצה מלאה, ולעבור תהליך עבודה צוותי אמיתי — Pull Request לכל פיצ’ר, קוד-ריוויו בין חברי הצוות, וניפוי-שגיאות משותף כשמשהו לא עובד באינטגרציה. עד כה כל שיעור בדק שירות אחד בבידוד — כאן בקשת HTTP יחידה ל-Collector צריכה “לזרום” דרך כל המערכת ולהופיע ב-Dashboard, בלי שאף חלק מהזרימה מוזרק ידנית. אם זה עובד מקצה לקצה, כל ה-Interface Contracts שתוכננו מראש היו נכונים בפועל, לא רק בתאוריה.

מה צריך להיות מוכן בסוף

דרישות:

  1. docker-compose.yml מלא עם כל 6 השירותים (Kafka, Redis, ו-4 שירותי הצוות), כולל depends_on נכון בין השירותים
  2. בדיקת End-to-End: בקשת HTTP אחת ל-Collector, מאומתת שמגיעה בסוף ל-/stats ב-Dashboard
  3. לפחות שינוי אחד שנעשה דרך Pull Request עם קוד-ריוויו מחבר צוות אחר
  4. הצגה קצרה של הצוות (5 דקות) שמדגימה את הזרימה המלאה בשידור חי

קריטריוני הצלחה:

• docker-compose up מריץ את כל המערכת בהצלחה בפקודה אחת

• אירוע “רגיל” שנשלח ל-Collector מופיע ב-totalEvents ב-Dashboard

• אירוע קיצוני מופיע גם ב-totalAnomalies וגם מייצר התראה ב-Alert — הכל מבקשת HTTP יחידה, בלי הזרקה ידנית של אף שלב ביניים

• כל שירות מדבר עם האחרים בשם השירות (kafka:9092 וכדומה), לא IP קשיח

דוקומנטציה רשמית מותרת

Docker — Compose overview