כדי לספק חוויית משתמש טובה, הקוד צריך לטפל בשגיאות בצורה נכונה. להציג למשתמשים הודעות שגיאה פרקטיות שמתארות את הפעולות שצריך לבצע כדי לתקן את המצב כדי לפתור את הבעיה.
במסמך הזה מתוארות שגיאות שעלולות להתרחש עם מחברים, איך הודעות פועלות, ואיך לטפל כראוי בשגיאות מחברים.
מידע: למידע נוסף על טיפול בחריגים ב-JavaScript, ראו try...catch כאלה
סוגי שגיאות
הסוגים והגורמים לשגיאות שבהם משתמש עשוי להיתקל במהלך השימוש המחבר בדרך כלל נכלל באחת משלוש הקטגוריות הבאות:
המחבר צריך לטפל בשגיאות פנימיות וחיצוניות של המחבר למפתחים. השגיאות האלה מתרחשות בגלל קוד שנכתב על ידי המפתח.
שגיאה פנימית במחבר
שגיאות פנימיות של המחבר מתרחשות במהלך ביצוע המחבר. לדוגמה, אם
המחבר לא יכול לנתח תגובת API במהלך הביצוע של getData()
.
יש לצפות לשגיאות האלה ולטפל בהן בעזרת הסברים ידידותיים למשתמש
במקרים הרלוונטיים.
למידע נוסף על טיפול בשגיאות פנימיות במחבר, ראו שיטות מומלצות לטיפול בשגיאות מחברים.
שגיאה חיצונית במחבר
שגיאות חיצוניות של המחבר מתרחשות לאחר הרצת המחבר. לדוגמה, כאשר
בקשת getData()
לשלושה שדות מחזירה נתונים לשני שדות בלבד. על אף
המחבר השלים ביצוע, הוא לא ענה לבקשה מ-Looker
אולפן. בדיקה קפדנית יכולה למנוע שגיאות כאלה.
בדרך כלל ניתן לתקן שגיאות חיצוניות במחבר על ידי בדיקת פרטי השגיאה (אם זמין) וניפוי באגים בקוד כדי לזהות את הבעיה. מידע נוסף על ניפוי באגים במחבר, אפשר לעיין במאמר ניפוי באגים בקוד.
שגיאה ב-Looker Studio
השגיאות ב-Looker Studio הן שגיאות שלא קשורות לקוד המחבר שלכם. לדוגמה, אם משתמש מנסה להשתמש בתרשים סדרת זמנים עם מקור נתונים ללא המאפיין 'תאריך/שעה'.
אם השגיאה לא קשורה ישירות למחבר, לא תהיה כל פעולה. שמפתח המחבר יוכל לקחת. משתמשים יכולים למצוא עזרה נוספת בכתובת מרכז העזרה של Looker Studio
מוצגות הודעות שגיאה
מוצגים פרטי שגיאה על סמך סטטוס האדמין
כשמחבר מקפיץ הודעת שגיאה, הודעת השגיאה ב-Looker Studio מוצגת. בהתאם לסטטוס האדמין של המשתמש.
- אם המשתמש הוא אדמין, הוא יוכל לראות את כל הפרטים. המידע הזה כולל הודעת השגיאה, סוג השגיאה ודוח הקריסות.
- אם המשתמש אינו משתמש עם הרשאת אדמין, הוא יראה את הפרטים רק אם כוללת הודעה ידידותית למשתמש. מידע נוסף על הצגת הודעת שגיאה הודעות למשתמשים שאינם אדמינים מופיעות במאמר שגיאות שעלולות לקרות למשתמשים.
שגיאות שעשויות להתרחש עם משתמש
כברירת מחדל, רק מנהלי מחברים יכולים לראות את פרטי השגיאה. זה עוזר למנוע חשיפה לא מכוונת של מידע רגיש, כמו מפתח API בסטאק למעקב. כדי להציג הודעות שגיאה למשתמשים שאינם אדמינים, צריך להשתמש ב-newUserError() שירות Looker Studio Apps Script.
דוגמה:
try {
// API request that can be malformed.
getDataFromAPI();
} catch (e) {
DataStudioApp.createCommunityConnector()
.newUserError()
.setDebugText('Error fetching data from API. Exception details: ' + e)
.setText('There was an error communicating with the service. Try again later, or file an issue if this error persists.')
.throwException();
}
בדוגמה הזו, setText()
מגדיר את הטקסט שיוצג לכל המשתמשים,
ו-setDebugText()
מגדיר את הטקסט שיוצג רק למשתמשים עם הרשאת אדמין.
שיטות מומלצות לטיפול בשגיאות מחברים
עליך לנסות לזהות כמה שיותר שגיאות ולטפל בהן במהלך של קוד המחבר שלך. לדוגמה, פעולות נפוצות מסוימות גורמים לשגיאות או מצב לא רצוי, כמו:
- ניסיון אחזור של כתובת URL שנכשל (שגיאות זמניות, זמנים קצובים לתפוגה)
- אין נתונים זמינים לתקופה המבוקשת
- אי אפשר לנתח או לעצב את הנתונים מה-API
- אסימוני ההרשאה בוטלו
טיפול בשגיאות שניתנות לשחזור
נקודות ביצוע של המחבר שעלולות להיכשל אבל ניתנות לשחזור צריכות להיות לטיפול. לדוגמה, אם בקשות API נכשלות מסיבה לא חמורה (למשל, מעל העומס על השרת), יש לנסות שוב לפני הפעלת השגיאה.
שגיאות של תפיסה וזריקה
יש לאתר שגיאות שלא ניתן לשחזר ולהעלות אותן מחדש. שגיאה בהפעלה חוזרת תעזור למשתמשים להבין את הסיבה לשגיאה. אם אפשר לפתור את הבעיה יש לספק פרטים על הפעולה לתיקון.
למידע נוסף, ניתן לעיין בקטע שגיאות שהמשתמשים נתקלים בהן.
רישום שגיאות ב-Stackdriver
שימוש ב-Stackdriver לשגיאות ברישום ביומן והודעות אחרות. זה עוזר ל: הבנת שגיאות, ניפוי באגים וגילוי חריגים שלא טופלו.
למידע נוסף על Stackdriver Error Reporting, איך מפעילים רישום חריגים לסקריפט ואיך לזהות משתמשים בבטחה למטרות ניפוי באגים שימוש ב-Stackdriver Logging.
הוצא משימוש: יש להשתמש בקידומת DS_USER:
להודעות שגיאה בטוחות
כדי לספק הודעות שגיאה ידידותיות למשתמש למשתמשים שאין להם הרשאת אדמין, צריך לכלול את
הקידומת DS_USER:
עם הודעות שגיאה. הקידומת הזו משמשת לזיהוי
הודעות למשתמשים שאינם אדמינים, והוא לא כלול בהודעת השגיאה עצמה.
הדוגמאות הבאות כוללות מקרה שבו תוצג הודעת שגיאה ל- משתמשים שאין להם הרשאת אדמין, שבהם הודעת שגיאה תוצג רק לאדמין משתמשים: