פיתוח דף סטטוס ל-SaaS: ניטור והתראות

לקוחות לומדים על תקלה מעמיתים לפני שהם שומעים ממכם, והתמיכה שוקעת בפניות זהות. אנו מפתחים דף סטטוס כמענה מלא: מפרקים את השירותים, מגדירים ניטור והתראות, ומוסרים נהלי תורנות. זמן ההתראה על תקלה מתקצר פי כמה, וזרם הפניות החוזרות יורד.

פיתוח ותחזוקה של כל סוגי האתרים:

אתרי מידע או יישומי אינטרנט
אתרי תדמית, דפי נחיתה, אתרי חברה, קטלוגים מקוונים, חידונים, אתרי קידום, בלוגים, מקורות חדשות, פורטלי מידע, פורומים, אגרגטורים
אתרי מסחר אלקטרוני או יישומי אינטרנט
חנויות מקוונות, פורטלי B2B, שווקים, בורסות מקוונות, אתרי קאשבק, בורסות, פלטפורמות דרופשיפינג, מנתחי מוצרים
יישומי אינטרנט לניהול תהליכים עסקיים
מערכות CRM, מערכות ERP, פורטלים ארגוניים, מערכות ניהול ייצור, מנתחי מידע
אתרי שירות אלקטרוני או יישומי אינטרנט
פלטפורמות מודעות, בתי ספר מקוונים, בתי קולנוע מקוונים, בוני אתרים, פורטלים לשירותים אלקטרוניים, פלטפורמות אירוח וידאו, פורטלים נושאיים

אלה רק חלק מהסוגים הטכניים של אתרים שאנו עובדים איתם, ולכל אחד מהם יכולים להיות מאפיינים ופונקציונליות ספציפיים משלו, וכן ניתן להתאים אותם לצרכים ולמטרות הספציפיים של הלקוח.

פיתוח דף סטטוס ל-SaaS: ניטור והתראות

פלטפורמות SaaS ושירותי אינטרנטפשוטמ- 1 יום עד 3 ימים
שאלות נפוצות

דף סטטוס שלא משקר: היכן אירועים הולכים לאיבוד

חלק מהשירותים מתדרדרים — זמן התגובה עולה, משימות רקע נתקעות, חלק מהמשתמשים לא מצליחים להיכנס. המהנדס התורן כבר רואה זאת בגרפים, אבל התראה ציבורית עדיין אין: היא תופיע בעוד חצי שעה, כשהתמיכה תאסוף את הפניות הראשונות ומישהו יעדכן את הדף ידנית. בין «אנחנו יודעים» ל«הלקוח יודע» פעור חלון, ובדיוק בו נולד חוסר האמון.

הסיבה הטיפוסית — דף סטטוס חי בנפרד מניטור זמינות. הבדיקות יוצאות מתוך אותו מעגל כמו השירות עצמו, לכן כשל של נקודת כניסה חיצונית או בעיות בצד הלקוח אינם משתקפים בהן. תוסיפו לכך מצב פרסום ידני: עד שאירוע לא אושר על ידי התורן, לא מודיעים עליו לאף אחד, והאישור נדחה בקלות עד הבוקר.

אובדן אירועים מתרחש במעבר בין משמרות. הבדיקה הופעלה, ההתראה נשלחה לצ'אט התורנים — אבל לא לערוץ הציבורי; ההקשר לא הועבר, והמהנדס הבא מתחיל לבדוק מהתחלה. לקוחות לומדים על התקלה מהשגיאות שלהם ופונים לתמיכה לפני שאנחנו מכירים בבעיה. נראות הכשלים בשעות כאלה יורדת לאפס, למרות שהיא נחוצה דווקא כשהעומס על קו ראשון הוא מקסימלי.

דף סטטוס שנבנה נכון הוא לא חלון ראווה, אלא חלק ממעגל ההתראות: בדיקות חיצוניות, מעבר אוטומטי של סטטוס לפי ספי שגיאות והשהיות, התראות ללקוחות לפני שהם עצמם מבחינים בתקלה. נפרט כיצד זה נסגר.

השפעות ההטמעה: זמן תגובה וזרימת פניות

ההשפעה של דף סטטוס נראית לא בממשק, אלא בשני מדדים: כמה מהר הלקוח לומד על תקלה וכמה פניות מגיעות לתמיכה במקביל. את שניהם אנו מודדים לפני ההשקה — לפי יומן הפניות ורישומי המשמרות — וחוזרים על כך אחרי חודש עבודה, כדי שההשוואה תהיה על אותם נתונים ולא על תחושות.

מבנה הדף לא מומצא מחדש: רכיבים, תבניות אירועים והרשמה חוזרים על מה שקבע Atlassian Statuspage, ולכן אין צורך להסביר ללקוח כיצד לקרוא את הסטטוס.

מדד כיצד מחשבים מה משתנה
זמן תגובה לאירוע מהפעלת הבדיקה ועד לרישום פומבי התורן מפרסם סטטוס לפי תבנית, ולא ממציא טקסט
זרימת פניות לתמיכה שיעור הפניות «הכול אצלכם למטה?» בדקות הראשונות השאלות עוברות להרשמה לעדכונים, ולא לקו ראשון
זמן התאוששות מפתיחת האירוע ועד להעברה ל«עובד» ללקוח יש נקודת ציון, והצוות לא מבזבז כוח על הסברים
שקיפות סטטוס השירות שיעור התקלות המשתקפות בדף היסטוריית האירועים נשארת פומבית ואינה נמחקת

הקבלה נעשית לפי רשימת תיוג, ולא לפי מראה הדף:

  • התראה נוצרת אוטומטית עם הפעלת הבדיקה, ללא שלב ידני של התורן;
  • סגירת האירוע היא חובה, אחרת הסטטוס לא יחזור למצב עבודה;
  • ההרשמה מעבירה עדכונים בדואר ובמסנג'ר, כולל ביטול הרשמה;
  • סדר הפרסום מעוגן בנהלי המשמרות ובתבניות ההודעות.

התוצאה העיקרית — נעלם סוג שלם של כשלים, שעליהם נודע קודם לכן מהלקוחות. האות הראשון מגיע מהניטור, ולא ממכתב עם השאלה «הכול עובד אצלכם?», והדרך מהתקלה ועד להתראה ציבורית נמדדת בדקות.

פורמטים של דף סטטוס: פומבי, סגור ופנימי

דף סטטוס פומבי הוא מעגל שנגלה ללקוחות ולשירות התמיכה. דף סטטוס סגור נפתח בהזמנה או דרך כניסה לחשבון: בו נראים רכיבים ספציפיים של הלקוח והיסטוריה לפי הסגמנט שלו. לוח התורן הפנימי הוא כלי עבודה של הצוות, והוא מציג הרבה יותר ממה שמותר להציג החוצה.

בחירת הפורמט נקבעת לא לפי נוחות הפריסה, אלא לפי אילו נתונים מותר לחשוף ומי מקבל החלטה על האירוע. להלן שלוש אפשרויות שבאמת בוחרים ביניהן.

אפשרות מתי מתאימה מגבלות
דף סטטוס פומבי לקוחות ושותפים צריכים לראות זמינות שירות ללא כניסה רק רכיבים מצטברים, בלי פרטים על לקוח בודד; הפרסום נדחה עד שהטקסט מאושר
דף סטטוס סגור לקוחות גדולים עם התחייבויות חוזיות לזמינות צריך להנפיק ולשלול הרשאות; חלק מהמצב בכל זאת נשאר סגור
לוח תורן פנימי העברת משמרת, ניתוח אירוע, בקרת התדרדרות לא מיועד לקוראים חיצוניים; נדרשים תפקידים ויומן פעולות

המעגל הפומבי והפנימי לא מחליפים זה את זה: החוצה יוצאות עובדות מאושרות, פנימה — מדדים גולמיים ומהלך העבודה. ההרשמה להתראות מוגדרת בנפרד לכל מעגל — לקוחות מקבלים הודעות לפי הרכיבים שלהם, והתורן לפי ספי הפעלה, כדי שהתראות לא יוכפלו לערוץ כללי.

שלבי הטמעה: מניתוח שירותים ועד העברת נהלים

הטמעת ניטור מתחילה לא בהגדרת התראות, אלא במיפוי: אילו שירותים משרתים את המוצר, מי אחראי עליהם וממה כל אחד תלוי. בלי התמונה הזו דף סטטוס הופך לרשימת כפתורים — בעת תקלה לא ברור מה בדיוק נפגע ומי להעיר. לכן השלבים הראשונים אצלנו עוסקים בסכימה, ולא בכלים.

  1. מיפוי שירותים ותלויות — אוספים רכיבים, אינטגרציות חיצוניות, תורים ומאגרים, מסמנים בעלים ונקודות כשל סבירות.
  2. סכימת שירותים ותלויות — בונים גרף קשרים: נפילה של איזה צומת משפיעה על מה ואיך זה משתקף בתרחישי משתמש.
  3. הגדרת בדיקות — קובעים סוגי בדיקות לכל רכיב, ספי הפעלה ומרווחים, כדי לא לתפוס רעש מסטיות קצרות.
  4. נוהל התראות — מחלקים מי ובאיזה חלון זמן מקבל התראה, אילו אירועים מפורסמים בדף וכיצד הסטטוס מתעדכן במהלך האירוע.
  5. בניית הדף הפומבי — מציגים רק רכיבים משמעותיים ללקוח ומקשרים אותם לסכימה הפנימית, כדי שהסטטוס יתאים למציאות.
  6. בדיקה באירוע תרגול — מדמים כשל ומריצים את כל המסלול: הפעלה, התראה, פרסום, סגירה. רואים היכן מתבזבז זמן.
  7. העברה — מוסרים הרשאות, תיעוד ונהלים, ומשמרת התורנים עובדת לפיהם ללא מעורבותנו.

חפצי הטמעה: סכימות שירותים, תבניות ונהלים

הטמעת דף סטטוס מסתיימת לא בפרסום הדף הראשון, אלא בהעברת מערכת מסמכים. בלעדיו, בעוד חודש איש לא יזכור מדוע שירותים מסוימים הופרדו לרכיבים שונים, מי רשאי להסיר באנר ובאיזו נוסח לפתוח את העדכון הראשון לאירוע. המערכת נאספת במהלך העבודה ונשארת אצל צוות הלקוח.

  • מפת שירותים ותיאור רכיבים — אילו תלויות חיצוניות רואה הלקוח, כיצד הן קשורות ואיזה רכיב נחשב נפגע בעת תקלה בשירות סמוך. המפה מתעדכנת בכל אינטגרציה חדשה, אחרת הסטטוס מתחיל להציג קשרים שאינם קיימים.
  • תבניות התראות — הכנות לארבעה מצבים: עבודות מתוכננות, התדרדרות, כשל חלקי וכשל מלא. בכל אחת — שלושה חלקים: מה נפגע, מה על המשתמש לעשות, ומתי לצפות לעדכון הבא.
  • נוהל משמרות — מי מאשר ראשון את האירוע, באילו שעות, כיצד מעביר משמרת ולפי איזו חותמת זמן נספר זמן התגובה.
  • סדר הסלמה — רמות העלאה מהתורן ועד לבעל השירות ולמנהל הטכני, עם סימנים שלפיהם מעלים רמה בלי להמתין.
  • תיעוד אירועים — פורמט אחיד לרישום: זמן גילוי, רכיבים נפגעים, עדכונים שפורסמו, סיבה, פעולות לתיקון. לפיו משחזרים כרונולוגיה ומתקנים תבניות.
  • כללי גישה לסטטוס — תפקידים עם הרשאות שונות: קריאה, פרסום עדכונים, ניהול רכיבים, הגדרת הרשמות. ההרשאות ניתנות לקבוצה, ולא אישית, כדי שהתורן לא יישאר בלי גישה בסוף השבוע.
  • הוראות לתורן — סדר שלב אחר שלב מקבלת האות ועד סגירת האירוע: היכן לבדוק מצב שירותים, איזו תבנית לבחור, מה לבדוק לפני פרסום.

המערכת נמצאת לצד קוד הדף ומתעדכנת יחד איתו — אז הסטטוס נשאר מקור מהימן, ולא ארכיון של מהדורות קודמות.

מקרה בוחן: כיצד קיצרנו את זמן ההתראה על אירועים

הלקוח — שירות SaaS עם תדירות פניות גבוהה: בשעות שיא כמה אלפי סשנים פעילים, והתדרדרות של תלות חיצונית הופכת מיד לזרם מכתבים לתמיכה. לפני הפרויקט נודע על התקלה מתלונות — בממוצע 12 דקות לאחר תחילתה, ועוד אותו זמן נדרש לשליחה ידנית.

העומס על התורן גדל יחד עם תדירות האירועים: יותר ממאה הודעות ידניות בשבוע — לצ'אט, לדואר, לדף הסטטוסים (status page). היסטוריית האירועים נוהלה בהתכתבות, והכרונולוגיה לניתוח שוחזרה ידנית.

מה שינינו

הפרדנו מעגלים: דף הסטטוסים, לוח הבקרה, שירות הבדיקות והתפוצה חיים בנפרד מהיישום הראשי ונשארים זמינים כשהמוצר עצמו אינו זמין. בדיקות חיצוניות ב-UptimeRobot ומדדים פנימיים אוחדו לשכבה אחת, שפותחת וסוגרת אירוע בעצמה לפי כללים: אישור — עדכון — התאוששות.

הודעות אוטומטיות נשלחות לערוצי הלקוחות מיד לאחר שינוי הסטטוס, והתבניות והטון נקבעים מראש. יומן האירועים שומר חותמות זמן, סיבה ומשך — ניתוחים נבנים מעובדות, ולא מזיכרונו של התורן.

לסיכום: זמן ההתראה הצטמצם מ-12 דקות ל-80 שניות, כ-90% מהפרסומים יוצאים אוטומטית, וכמעט לא נותרו שליחות ידניות. בעת תקלה חוזרת, לקוחות ראו את הסטטוס לפני שהגיעה הפנייה הראשונה לתמיכה.

במה שונה דף הסטטוס ללקוח מלוח התורן?

דף הסטטוס הפומבי ולוח התורן נשענים על אותה מודל רכיבים, אבל פותרים משימות שונות: הראשון מסיר זרם פניות אחידות לתמיכה, והשני מזרז את איתור הכשל. החוצה יוצאים המצב וההשפעה על המשתמש, פנימה — מדדים, לוגים וקשרים בין שירותים.

הלקוח רואה רשימת רכיבים, את מצבם, היסטוריית אירועים והרשמה לעדכונים. את הניסוחים אנחנו משאירים ברמת ההשפעה: «זמן תגובה מוגבר באזור האישי» במקום «התדרדרות צומת בסיס נתונים». שמות שירותים פנימיים וכתובות צמתים אינם נכנסים לטקסט הפומבי — לפיהם משחזרים את הארכיטקטורה.

לוח התורן עובד עם אותה מפת רכיבים, אבל לצדה מונחים גרפים, אירועי מערכות ניטור וקישור התראות לשירות. התורן רואה מה בדיוק התדרדר את מי זה נוגע, ומכין טיוטת פרסום בלי לעבור בין כלים.

רמות הגישה מופרדות: ללקוח יש רק צפייה והרשמה, לתורן — עריכת מצבים, ולמנהל המשמרת — אישור פרסום והסלמה. כל שינוי נכנס ליומן: רואים מי ומתי פתח או סגר אירוע.

גם רמת פירוט ההתראות שונה: הלקוח נרשם לרכיבים ולערוצים מסוימים ומקבל הודעה לאחר אישור האירוע — כך נחסמות שליחות בגלל קפיצות קצרות. עבודות מתוכננות נשלחות מראש לפי תבנית נפרדת ואינן מתערבבות עם הודעות חירום.

התנגדויות טכניות: אותות שווא ומעגל סגור

הספקות בהתחלה הן כמעט תמיד אותן ספקות — לא על מראה הדף, אלא על התנהגותו ברגע של תקלה אמיתית.

התראות יגיעו כל הזמן — התורן יפסיק להגיב להן?

הסף והתדירות של ההתראות נקבעים לפי משך, ולא לפי כשל בודד: הבדיקה צריכה להיכשל כמה פעמים ברצף מנקודות תצפית שונות. כך הפעלות שווא לא מעירות את התורן, ולפרסום עוברת רק התדרדרות יציבה.

ומה אם ערוץ התקשורת עצמו, שדרכו הדף מקבל נתונים, ייכשל?

אנחנו ממקמים את הדף מחוץ למעגל הראשי ושומרים תמונת מצב סטטית של המצב האחרון: אם איסוף הנתונים אינו זמין, המבקר רואה את זמן העדכון, ולא מסך ריק.

האם לא נחשוף את המבנה הפנימי של המערכת?

הפרסום נשאר מעגל סגור: מוציאים רק סימפטומים נצפים חיצונית והשפעה על השירות — מה לא זמין ולמי. שמות רכיבים פנימיים וסיבות כשל נשארים בניתוח הפנימי.

האם אפשר לעדכן את היסטוריית האירועים בדיעבד?

הכרונולוגיה מנוהלת כיומן: רשומה נקלטת עם חותמת זמן, והבהרה מתווספת כשורה חדשה, לא ככתיבה מחדש של הישנה. הפוסטמורטם נשאר ניתן לבדיקה.

מה יקרה כשתעבירו את הפרויקט לצוות אחר?

תמיכה בדף הסטטוס היא נוהל משמרות, קטלוג בדיקות, תבניות הודעות והרשאות. אנחנו מעבירים אותם בתיעוד, ולא «בראש של המהנדס».

נדון במשימה: ממה מתחילה ההטמעה

את השיחה אנחנו מתחילים בניתוח שירותים: מה כבר מספק מדדים, אילו תלויות חיצוניות קריטיות, ואילו צוותים צריכים לקבל התראה בעת התדרדרות. מזה תלוי הרכב הבדיקות ומודל הרכיבים של דף הסטטוס הפומבי — בלי ניתוח כזה כל הערכה תהיה ניחוש.

מה ייכלל בניתוח הראשון:

  • מפת שירותים ותלויות: מה נחשב התדרדרות, מה עבודה מתוכננת, ומה בכלל לא מציגים החוצה;
  • רשימת בדיקות וספים — זמינות שירותים והממשקים שלהם, זמן תגובה, שיעור שגיאות, רעננות תורי עיבוד;
  • תרחישי התראות: מי, לפי איזה אירוע ובאיזה ערוץ מקבל הודעה, וכיצד בנויה הסלמה לפי זמן;
  • מבנה רכיבי הדף וכללי פרסום אירועים: מה רואה הלקוח, מה נשאר במעגל הפנימי;
  • מודל הרשאות והפרדת תפקידים — מי מכין רשומה, מי מאשר פרסום, כיצד מתבצע ביקורת שינויים;
  • מצבי חזרה לאחור: כמה מהר מחזירים את התצורה למצב הקודם אם עדכון נכשל;
  • רשימת אינטגרציות מושפעות, כדי שהמעבר יעבור בלי השבתה למשתמשים.

מצדכם יידרשו רשימת שירותים, סכימות ניטור קיימות ופרטי קשר של האחראי על התשתית. לאחר הניתוח נחזור עם הערכה ותוכנית עבודה: שלבים, הרכב בדיקות, מה אנחנו סוגרים בכוחות עצמנו ובאיזה שלב מצרפים את הצוות שלכם.

הכישורים שלנו:

העבודות האחרונות

  • פיתוח אפליקציית ווב עבור FEEDME
    פיתוח אפליקציית ווב עבור FEEDME
    1396
  • פיתוח חנות מקוונת לחברת FURNORO
    פיתוח חנות מקוונת לחברת FURNORO
    1375
  • פיתוח אפליקציית ווב עבור Enviok
    פיתוח אפליקציית ווב עבור Enviok
    1143
  • פיתוח CRM עבור Chasseurs
    פיתוח CRM עבור Chasseurs
    1154
  • פיתוח אתר עבור SBH Partners
    פיתוח אתר עבור SBH Partners
    1233
  • פיתוח אתר עבור Red Pear
    פיתוח אתר עבור Red Pear
    643