כדי לפתור הודעות שגיאה או תוצאות לא צפויות בתרשימים ובווידג'טים של לוח הבקרה ב-Cloud Monitoring, אתם יכולים לשנות את השאילתות, את תקופות ההתאמה ואת ההרשאות, כך שהנתונים הטלמטריים יוצגו בצורה מדויקת. המסמך הזה עוזר לכם לאבחן בעיות נפוצות ב-Metrics Explorer ובמרכזי בקרה בהתאמה אישית, כולל פערים בנתונים, מגבלות על הצגת סדרות זמנים, יחידות לא תואמות בציר Y ושגיאות בהגדרת הווידג'טים.
שגיאות בתרשימים
בקטע הזה מתוארות שגיאות שעשויות להופיע כשמגדירים תרשים. אפשר להגדיר תרשימים באמצעות Metrics Explorer או על ידי הוספה שלהם למרכז בקרה.
פערים בנתוני התרשים
לפעמים יש פערים בנתונים שמוצגים בתרשימים. לדוגמה, בצילום המסך הבא אפשר לראות את ההתנהגות הזו במדד loadbalancing.googleapis.com/https/total_latencies:
יכולים להיות פערים בנתונים אם הם נכתבים לעיתים רחוקות מאוד. Cloud Monitoring אוסף מדדים באמצעות דגימה, ובנתונים דלילים מאוד, יכול להיות שלא יהיו נתונים זמינים כשדוגמים נתונים. לדוגמה, יכולים להיות פערים במדדים של מאזן העומסים כשמספר הבקשות הוא 0.05 שאילתות לשנייה (QPS) או פחות. כשהקצב של השאילתות עולה, הפערים נעלמים.
כדי להסיר פערים חזותיים, אפשר להגדיל את מרווח היישור. כשהמערכת יוצרת סדרת זמנים חדשה עם נקודות על הגרף במרווחים קבועים, היא משתמשת במרווח ההתאמה כדי לקבוע את חלון הזמן שבו משולבות נתונים גולמיים. מידע נוסף מופיע במאמר בנושא התאמה: רגולריזציה בתוך סדרות.
כדי להגדיר מרווח יישור מינימלי, עורכים את השאילתה של התרשים. לדוגמה, כשמשתמשים ב-Metrics Explorer, עוברים לחלונית השאילתה ובוחרים באפשרות add הוספת רכיב שאילתה. בתפריט, לוחצים על מרווח מינימלי ובוחרים מרווח זמן.
תקופת ההתאמה משתנה כשמשנים את טווח התאריכים
אתם מוסיפים תרשים למרכז בקרה. כשמשנים את טווח התאריכים של לוח הבקרה או של התרשים, לפעמים תקופת ההתאמה משתנה. לדוגמה, אם משנים את טווח הזמן משעה אחת לשעתיים, תקופת ההתאמה תופיע כ-1 minute interval. אבל אם משנים את טווח התאריכים משעה אחת ליום אחד, תקופת ההתאמה תהיה 5 minute interval.
זו התנהגות צפויה.
יש מגבלה על מספר נקודות על הגרף שאפשר להציג בתרשימים. לכן, כשמספר נקודות על הגרף שזמינות בטווח תאריכים שנבחר גדול ממגבלת התצוגה, מערכת Monitoring משנה באופן אוטומטי את הגדרות ההתאמה כדי לצמצם את מספר נקודות על הגרף שיוצגו.
התרשים לא מציג את כל סדרות הזמן
הגדרתם תרשים, אבל לא כל הסדרות של נתוני הזמן מוצגות.
מטעמי ביצועים, התרשימים מוגדרים להצגה של עד 50 סדרות זמן.
כשמגדירים תרשים ויש יותר מ-50 סדרות זמן זמינות, התרשים מגביל את מספר סדרות הזמן שמוצגות ומוסיף לסרגל הכלים סמל עם נקודה אדומה. בהסבר הקצר של הסמל מוצגת ההודעה הבאה:
To improve performance, we've limited the time series displayed in this chart.
כדי להציג את כל סדרות הזמנים, מרחיבים את ההסבר הקצר ולוחצים על הכפתור Show All Time Series.
בתרשים לא מוצגים נתונים
אתם מגדירים תרשים, אבל בתרשים מוצגת הודעת שגיאה במקום נתונים:
אם אין נתונים זמינים לטווח התאריכים שצוין בתרשים, מוצגת ההודעה הבאה:
No data is available for the selected time frame.כדי לפתור את הבעיה, נסו את הפתרונות הבאים:
להגדיל את טווח התאריכים של התרשים. חלק מסוגי המדדים, כמו אלה שמדווחים על ניצול המכסה, מספקים רק דגימה אחת ביום.
משנים את סוג המדד שנבחר לתרשים. יכול להיות שסוג המדד שצוין בתרשים לא פעיל. סוג מדד לא פעיל כשאין סדרת זמן לסוג הזה.
אם סוג המדד או סוג המשאב שצוינו בשאילתה לא מזוהים, מוצגת ההודעה הבאה:
An error occurred requested data. One or more resources could not be found.כדי לפתור את הבעיה, נסו את הפתרונות הבאים:
מוודאים שסוג המדד וסוג המשאב שצוינו בשאילתה מוגדרים. אתם יכולים להשתמש בממשק מבוסס-התפריטים של התרשימים כדי לחפש את סוג המדד.
בודקים את האיות של סוג המדד וסוג המשאב בשאילתה.
בתרשים מוצגת אזהרה לגבי מטא-נתונים רגישים
אתם פותחים מרכז בקרה בהתאמה אישית ומצפים שכל הווידג'טים יציגו נתונים. עם זאת, יכול להיות שיוצגו הודעות דומות להודעות הבאות בווידג'טים שמכילים שאילתות SQL:
This SQL query is configured to run on the BigQuery engine using [PROJECT_ID],
and references resources from [RESOURCE, ...]. Sensitive metadata,
including table contents, may be written to [PROJECT_ID].
הודעת האזהרה מציינת שהשאילתה חוצה את גבולות הבעלות, ומאפשרת לכם לאמת את השאילתה לפני שהיא מופעלת. גבולות הבעלות נקבעים לפי כמה גורמים, שאחד מהם הוא ההיררכיה של המשאבים שבהם נעשה שימוש בשאילתה.
המערכת מבצעת בדיקות גבולות בכל פעם שפותחים לוח בקרה. אי אפשר למנוע או לסגור את האזהרות האלה.
אם מוצגת הודעת האזהרה בווידג'ט, אפשר לבצע אחת מהפעולות הבאות:
אם אתם יודעים שהשאילתה בטוחה להרצה ואתם רוצים לראות את תוצאות השאילתה, לחצו על Confirm and Run.
מתעלמים מהודעת השגיאה. בווידג'ט הזה לא מוצגים נתונים מהסשן הנוכחי.
לנתח את השאילתה ולהשבית אותה אם צריך. לדוגמה, אפשר לבצע את הפעולות הבאות:
- בודקים את השאילתה ומעריכים אילו נתונים נשלפים.
- בודקים את ההיסטוריה של מרכז הבקרה כדי לראות מי הוסיף את הווידג'ט ומתי.
- אם קיבלתם קישור למרכז בקרה, ודאו שהשולח הוא מקור מהימן.
- כדי לשמור את הניתוח במרכז הבקרה לשימוש עתידי, מוסיפים ווידג'ט Text.
ב-Google Cloud יש כמה תכונות שיכולות לעזור למנוע זליגת נתונים באמצעות פישינג, התקפות פנימיות או ישויות חיצוניות. מידע נוסף זמין במאמר אבטחת מידע באמצעות Observability Analytics.
בתרשים עם כמה מדדים מוצגת הודעת שגיאה
אתם מגדירים תרשים להצגת כמה מדדים, ובתרשים מוצגת הודעת השגיאה הבאה:
The units for queries using the same Y-axis must be the same for the chart
to render correctly.
בתרשימים אפשר להציג כמה סוגים של מדדים, ואפשר למפות סוג של מדד לציר ה-Y השמאלי או לציר ה-Y הימני. היחידות של כל סוגי המדדים שממופים לציר ה-Y השמאלי צריכות להיות זהות. אחרת, תוצג הודעת השגיאה הקודמת. באופן דומה, היחידות של כל סוגי המדדים שממופים לציר ה-Y הימני צריכות להיות זהות, אחרת תוצג הודעת השגיאה הקודמת.
כדי לפתור את השגיאה:
אם התרשים מכיל מדדים עם יותר משני סוגי יחידות, צריך להסיר מדדים עד שיישארו רק שני סוגי יחידות.
משייכים את כל המדדים עם סוג יחידה אחד לציר ה-Y השמאלי ואת כל המדדים עם סוג היחידה השני לציר ה-Y הימני.
בתרשים עם כמה מדדים מוצגים נתונים לא צפויים
תרשים מוגדר להצגת כמה מדדים, והוספו לו מסננים להצגת סדרות זמן ספציפיות בלבד. עם זאת, בתרשים מוצגות סדרות זמנים שלא עומדות בתנאי המסננים.
כדי לפתור את הבעיה, צריך להפעיל מסננים על כל מדד שמוצג בתרשים.
לדוגמה, בצילום המסך הבא מוצגת חלונית ההגדרות של Metrics Explorer לתרשים שמציג את מספר הבייטים שנקראו ונכתבו על ידי מכונות וירטואליות (VM):
בצילום המסך, יש כותרת אחת לכל סוג מדד שמוצג בתרשים.
לדוגמה, אם רוצים שהתרשים יציג סדרות זמן רק עבור מכונות וירטואליות שנמצאות באזור us-central1-a, צריך להוסיף את המסנן zone = us-central1-a לכל שאילתה.
אי אפשר לבחור ערכי מסנן לתרשימים שמוגדרים באמצעות PromQL
אתם יוצרים תרשימים בלוח בקרה בהתאמה אישית ומגדירים אותם באמצעות PromQL. אחר כך יוצרים מסננים קבועים למרכז הבקרה. כשאתם מנסים לשנות את ערך ברירת המחדל של המסנן במרכז הבקרה, התפריט של ערכי התוויות לא מוצג או שהוא לא נכון:
כדי לפתור את הבעיה, מזינים את ערך המסנן ולוחצים על אישור.
לדוגמה, אם מפתח המסנן הוא zone, אפשר להזין us-central1-a.
שגיאות בלוח הבקרה
בקטע הזה מתוארות שגיאות שיכולות להופיע כשיוצרים או עורכים מרכזי בקרה.
יצירת מרכז הבקרה נכשלה
כדי ליצור מרכז בקרה, משתמשים בתיאור של מרכז הבקרה ב-JSON או ב-YAML, והתיאור הזה כולל שדה name.
אתם משנים את השם המוצג ומנסים ליצור מרכז בקרה שני, אבל מקבלים שגיאה. לדוגמה, אם משתמשים ב-Google Cloud CLI, מקבלים את השגיאה הבאה:
ERROR: (gcloud.alpha.monitoring.dashboards.create) Resource in projects [xxxxxxx] is the subject of a conflict: Requested entity already exists.
הסיבה לכישלון היא שמזהה מרכז הבקרה, שמזהה את מרכז הבקרה הזה בערך של השדה name, כבר קיים. לכן, אי אפשר ליצור את לוח הבקרה.
אם אתם מציינים את השדה name כשאתם יוצרים לוח בקרה, הערך שאתם מציינים חייב להיות ייחודי באופן גלובלי. התחביר של השדה name הוא:
"name": "projects/PROJECT_ID_OR_NUMBER/dashboards/DASHBOARD_ID"
השם המוצג לא חייב להיות ייחודי.
לא כל האירועים מוצגים בלוח הבקרה
אתם מגדירים לוח בקרה להצגת אירועים, אבל מוצגים רק אירועים מהזמן האחרון. אירועים ישנים יותר לא מוצגים.
כדי לפתור את הבעיה, אתם יכולים לבצע אחת מהפעולות הבאות:
השתמשו בטווח תאריכים קצר יותר. לדוגמה, אפשר להציג נתונים מהשעה האחרונה במקום מהיום האחרון, או לבחור טווח תאריכים מותאם אישית.
מוסיפים מסננים.
מטעמי ביצועים, מספר האירועים שניתן להציג בלוחות הבקרה מוגבל. כשמגיעים למגבלות האלה, בלוחות הבקרה מוצגים רק האירועים האחרונים.
מרכז בקרה שנוצר ב-Terraform משנה את קנה המידה שלו
יצרתם מרכז בקרה באמצעות Terraform ואז ערכתם אותו באמצעות Google Cloud המסוף. ציפית שהשינויים שביצעת יהיו השינויים היחידים בלוח הבקרה. במקום זאת, לוח הבקרה משנה את קנה המידה שלו. לדוגמה, אם במרכז הבקרה היו 12 עמודות, עכשיו יש בו 48 עמודות.
אל תשתמשו במסוף Google Cloud כדי לערוך מרכזי בקרה שנוצרו באמצעות Terraform. כשעורכים את מרכז הבקרה, הגודל משתנה פי ארבע.
בווידג'ט של מדיניות ההתראות לא מוצגים נתונים
בלוח הבקרה יש תרשים של מדיניות התראה, אבל לא מוצגים בו נתונים.
כדי לפתור את הבעיה, נסו את הפתרונות הבאים:
בודקים את הגדרות התרשים ומוודאים שנבחרה מדיניות התראה. אם לא מוצגת מדיניות התראות, צריך לשייך את התרשים למדיניות התראות או למחוק את התרשים מלוח הבקרה.
תרשימים במרכזי בקרה שמציגים נתונים של מדיניות התראות מפסיקים להציג נתונים כשמדיניות ההתראות שאליה הם מפנים נמחקת. מחיקה של מדיניות התראות לא תגרום למחיקה של תרשימים שמפנים למדיניות הזו.
בודקים את הפרטים של מדיניות ההתראות ומוודאים שהיא מכילה תנאי אחד.
תרשימים במרכזי בקרה שמציגים נתונים של מדיניות התראה מפסיקים להציג נתונים אם משנים את מדיניות ההתראה כך שתכיל כמה תנאים. כדי לפתור את הבעיה, שייכו את התרשים למדיניות התראה עם תנאי אחד או מחקו את התרשים מלוח הבקרה.
להגדיל את טווח התאריכים. צריך להגדיר את בורר טווח התאריכים לערך ארוך יותר מתקופת הדגימה של הנתונים. רוב המדדים נדגמים כל 60 שניות, אבל חלק מהמדדים נדגמים בתדירות נמוכה יותר. לדוגמה, המדד serviceruntime.googleapis.com/quota/limit נדגם כל 86,400 שניות (יום אחד).
הודעה על שאילתה לא תקינה בחלונית היומנים
מופיעה הודעת השגיאה 'שגיאה: שאילתה לא תקינה', ובחלונית היומנים לא מוצגות רשומות ביומן.
כדי לפתור את הבעיה, צריך להקטין את מספר הפרויקטים שהחלונית 'יומנים' מוגדרת להציג.
מידע נוסף על תנאי הכשל הזה זמין במאמר השאילתה מחזירה שגיאה.
בחלונית 'יומנים' מופיעה ההודעה 'לא נמצאו ערכים'
הודעת השגיאה "No entries found matching current filter" מופיעה בחלונית היומנים. יש כמה סיבות אפשריות להודעה הזו. זה מה שכדאי לבדוק:
לכל פרויקט שרוצים להציג את הרשומות ביומן שלו, צריך לוודא שאחד מהתנאים הבאים מתקיים:
- יש לכם את התפקיד צפייה ביומנים (
roles/logging.viewer). לתפקידים בהתאמה אישית יש לכם את ההרשאות הבאות:
logging.logs.listlogging.logServiceIndexes.listlogging.logServices.list
- יש לכם את התפקיד צפייה ביומנים (
חשוב לוודא שהפסוקיות בעורך השאילתות לא מתנגשות עם ההגדרות שמוצגות בחלונית היומנים.
לדוגמה, כאשר השדה עורך השאילתות מכיל את הערך
severity=NOTICE, בחלונית היומנים יאוחזרו כל היומנים שרמת החומרה שלהם היא בדיוקNOTICE. אם התפריט Severity בחלונית היומנים מוגדר ל-Warning, בחלונית היומנים מוצגת ההודעה No entries found matching current filter (לא נמצאו רשומות שתואמות למסנן הנוכחי). ההודעה מוצגת כי לאף אחת מרשומות היומן שאוחזרו אין רמת חומרה של Warning לפחות.לעומת זאת, אם השדה עורך השאילתות מכיל את הערך
severity=WARNINGוהתפריט Severity בחלונית היומנים מוגדר ל-Notice, יכול להיות שיופיעו רשומות ביומן. בהגדרה הזו, בחלונית היומנים מוצגים יומנים שרמת החומרה שלהם היאWARNING. לאחר מכן, רשימת היומנים מסוננת כדי להציג רק את היומנים שרמת החומרה שלהם היא לפחות "הודעה", וכל היומנים שאוחזרו הם לפחות ברמת החומרה הזו.
בחלונית היומנים מוצגים נתונים חלקיים
בחלונית היומנים מופיעים סמל אזהרה וההודעה "Showing partial results".
האינדיקטור הזה מוצג כשאין לכם הרשאה להציג את היומנים של Google Cloud פרויקט שבחרתם להציג את היומנים שלו. כדי להסיר את סימן האזהרה, מבצעים אחת מהפעולות הבאות:
פנו לאדמין של המערכת ובקשו ממנו לבצע אחת מהפעולות הבאות בכל פרויקט ב- Google Cloud שאתם רוצים לראות את היומנים שלו:
- להקצות לכם את התפקיד צפייה ביומנים (
roles/logging.viewer). לתפקידים בהתאמה אישית, צריך להעניק את ההרשאות הבאות:
logging.logs.listlogging.logServiceIndexes.listlogging.logServices.list
- להקצות לכם את התפקיד צפייה ביומנים (
משנים את ההגדרות של חלונית היומנים כך שיוצגו רק יומנים של פרויקטים ב-Google Cloud שיש לכם הרשאה לראות את רשומות היומן שלהם.
הודעה על דחיית הרשאה בחלונית היומנים
בווידג'ט של חלונית היומנים בלוח הבקרה מופיעה הודעת השגיאה הבאה:
Error: Permission 'logging.views.access' denied on resource (or it may not exist).
כדי לפתור את הבעיה:
- עריכת הווידג'ט של חלונית היומנים.
מבצעים אחת מהפעולות הבאות:
בתפריט Scope by בוחרים באפשרות Project, ובתפריט Projects בוחרים באפשרות Current project.
מסירים מהתפריט Storage views את תצוגות היומנים שאין לכם הרשאה לראות. במאמר מתן גישה לתצוגת יומן מוסבר אילו תפקידים ב-IAM נדרשים כדי לגשת לתצוגות של יומנים.
כשהווידג'ט של חלונית היומנים מחפש בתצוגות של יומנים, אתם צריכים הרשאה לקרוא רשומות ביומן בכל התצוגות של היומנים שמופיעות ברשימה. אחרת, תוצג הודעת שגיאה.
לוחצים על אישור.
לא כל סדרות הזמן מוצגות בטבלה
אתם מגדירים טבלה, אבל לא כל סדרות הזמנים מוצגות.
מטעמי ביצועים, הטבלאות מוגדרות להצגת 300 שורות לכל היותר.
קריאה ל-API ליצירת מרכז בקרה עם לוח יומנים נכשלת
יכולות להיות כמה סיבות להודעת שגיאה כשיוצרים לוח בקרה עם חלונית יומנים:
אם חלונית היומנים לא עומדת בדרישות המינימליות של הגובה או הרוחב, תופיע השגיאה הבאה:
Unable to save dashboard: Field mosaicLayout.tiles[0] has an invalid value: LogsPanel must have a minimum width of 3 and height of 3.
כדי לפתור את הבעיה, צריך לוודא שהשדות
heightו-widthשל הווידג'ט של חלונית היומנים בייצוג ה-JSON של לוח הבקרה עומדים בדרישות המינימליות.אם בשדה
logsPanel.filterיש יותר מ-2,000 תווים, מוצגת השגיאה הבאה:Unable to save dashboard: filter cannot be greater than 2000 characters.
כדי לפתור את הבעיה הזו, צריך לקצר את המסנן.
אם השדה
resourceNamesחסר, מוצגת הודעת השגיאה הבאה:Unable to save dashboard: Dashboard is missing required field mosaicLayout.tiles[0].widget.logsPanel.resourceNames.
כדי לפתור את הבעיה, צריך להוסיף את השדה
resourceNamesלקובץ ה-JSON של מרכז הבקרה.אם התחביר של השדה
resourceNamesשגוי, תופיע שגיאה דומה לזו:Unable to save dashboard: Field mosaicLayout.tiles[0].widget.logsPanelWidget.resourceNames has an invalid value of "a-project": resource name must have the format `projects/{project}`.כדי לפתור את הבעיה, מחליפים את
a-projectב-projects/a-projectבקובץ ה-JSON של מרכז הבקרה.מידע על פתרון שגיאות תחביר בשדה
filterזמין במאמר פתרון בעיות: בעיות תחביר.
דוגמה לקובץ JSON בפורמט תקין מופיעה במאמר לוח בקרה עם ווידג'ט LogsPanel.
ייבוא מרכזי בקרה של Grafana
במאמר ייבוא מרכזי בקרה של Grafana ל-Cloud Monitoring מוסבר איך משתמשים בכלי לייבוא מרכזי בקרה ואיך פותרים בעיות שקשורות אליו.
מידע על בעיות בהמרה של תוכן לוח הבקרה מופיע בקובץ README של הכלי לייבוא.