דלג לתוכן הראשי

Runbooks - תפעול תקלות

מסמך זה מרכז נהלי עבודה לטיפול בתקלות נפוצות בייצור (Production).

1. שירות מסוים למטה (Service Down)

סימפטום

הודעות שגיאה בלקוח, או ניטור מראה סטטוס 'Red'.

פעולות

  1. התחבר לשרת ב-SSH.
  2. בדוק סטטוס קונטיינרים: docker ps.
  3. אם קונטיינר נפל, בדוק לוגים: docker logs <container_name> --tail 100.
  4. הפעל מחדש את השירות: docker-compose restart <service_name>.

2. עומס גבוה ב-DB

סימפטום

איטיות בכל המערכת, Timeout בבקשות API.

בדיקה

  1. בדוק חיבורים פעילים במונגו (דרך Mongo Express או CLI).
  2. חפש שאילתות איטיות (Slow Queries) בלוגים.
  3. ודא שיש אינדקסים מתאימים לכל השאילתות הנפוצות.

3. מכשירים לא מתעדכנים (MQTT Issue)

סימפטום

שינוי בזמני תפילה לא משתקף במסכים בזמן אמת.

פעולות

  1. בדוק אם שירות ה-Mosquitto למעלה.
  2. נסה לשלוח הודעה ידנית ל-Topic של מכשיר ספציפי דרך כלי צד שלישי (MQTT Explorer) כדי לראות אם היא מגיעה.
  3. אם ה-Broker "תקוע", בצע Restart ל-Mosquitto. המכשירים יתחברו מחדש אוטומטית.

4. שחזור מגיבוי (Database Restore)

תרחיש

מחיקת נתונים בטעות או השחתת DB.

נוהל

  1. אתר את קובץ הגיבוי האחרון (/backups/automated/...).
  2. עצור את שרת ה-NestJS כדי למנוע כתיבה בזמן השחזור.
  3. הרץ פקודת שחזור:
    mongorestore --uri="mongodb://..." --drop --archive=<backup_file>
  4. הפעל מחדש את השרת ובדוק תקינות נתונים.