סקירה כללית של Error Reporting

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

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

כדי לשפר את הביצועים, Error Reporting דוגם עד 1,000 שגיאות בשעה, ומעריך את המספרים כשהוא מגיע לסף הזה. אם נפח האירועים חורג מהקיבולת, המערכת של Error Reporting דוגמת עד 100 שגיאות בשעה וממשיכה להסיק את המספרים שמוצגים.

כאשר Error Reporting מנתח רשומות ביומן

השירות Error Reporting הוא שירות גלובלי שמבוסס על Cloud Logging, והוא יכול לנתח רשומות ביומן אם כל התנאים הבאים מתקיימים:

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

איך אירועי שגיאה מקובצים

כשכלי הדיווח על שגיאות מעריך רשומות ביומן כדי לזהות אירועי שגיאה, הוא מתעלם מהנתונים הבאים:

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

כשסורקים רשומה ביומן, Error Reporting מבצעת את השינויים הבאים לפני שהיא מסיקה על אירועי שגיאה:

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

Error Reporting מחיל את הכללים האלה, לפי הסדר שצוין, כדי לקבץ אירועי שגיאה:

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

לדוגמה, בעיות שספציפיות ל-App Engine:

com.google.apphosting.runtime.HardDeadlineExceededError
com.google.appengine.api.datastore.DatastoreTimeoutException

בעיות ב-Java:

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

לדוגמה:

runtime error: index out of range
package1.func1()
      file1:20
package2.func2()
      file2:33
הן מקובצות לפי סוג החריגה וחמשת הפריימים העליונים.
אירועי שגיאה בלי דוח קריסות אבל עם הודעה.

לדוגמה:

runtime error: index out of range
    func1()

בדוגמה הזו, הטוקנים הבאים נלקחים בחשבון: runtime,‏ error ו-index.

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

אזורים גיאוגרפיים לאחסון נתונים

אם הגדרתם את Assured Workloads לדרישות של מיקום אחסון הנתונים או של רמת ההשפעה 4 (IL4), אז Google Cloud Error Reporting מושבת אוטומטית.

ב-Cloud Logging, אתם יכולים להגדיר את היומנים לפי אזור על ידי ניתוב שלהם למיקום ספציפי. בדף Error Groups, שירות Error Reporting מארגן ומציג קבוצות של שגיאות על סמך האזור של קטגוריה ביומן שמכילה את רשומות היומן. לדוגמה, קבוצת שגיאות שמופיעה בקטגוריה us-central1 מכילה רק יומני שגיאות ששייכים לקטגוריה ביומן ב-us-central1. קבוצות שגיאות גלובליות מכילות רק יומני שגיאות ששייכים למאגר יומנים באזור global.

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

תפריט האזור בדף 'קבוצות שגיאות'.

המאמרים הבאים