בעזרת Observability Analytics אתם יכולים להציג את תוצאות השאילתות ב-SQL בתרשימים, כדי לזהות דפוסים ומגמות בנתוני היומן. אחרי שמריצים שאילתה כדי לחפש ולצבור את היומנים, אפשר להציג את התוצאות בטבלה, להמיר אותן לתרשים ולשמור את התצוגה החזותית במרכז בקרה.
לדוגמה, בתרשים הבא מוצג מספר הרשומות ביומן לאורך תקופה של 12 שעות, בחלוקה לפי severity:
לפני שמתחילים
בקטע הזה מוסבר מה צריך לעשות לפני שמשתמשים ב-Observability Analytics.
הגדרת קטגוריות ביומן
מוודאים ששדרגתם את קטגוריות היומנים לשימוש ב-Observability Analytics:
-
נכנסים לדף Logs Storage במסוף Google Cloud :
אם אתם משתמשים בשורת החיפוש כדי למצוא את הדף הזה, בחרו בתוצאה עם כותרת המשנה Logging.
- בכל מאגר של יומנים שיש בו תצוגת יומנים שרוצים לשלוח אליה שאילתה, מוודאים שבעמודה Observability Analytics available מופיע הערך Open. אם מופיע הכפתור Upgrade, לוחצים עליו ומשלימים את תיבת הדו-שיח.
הגדרת תפקידים והרשאות ב-IAM
בקטע הזה מתוארים התפקידים או ההרשאות של IAM שנדרשים כדי להשתמש ב-Observability Analytics:
-
כדי לקבל את ההרשאות שנדרשות לשימוש ב-Observability Analytics ולשאילתות בתצוגות של יומנים, בקשו מהאדמין להקצות לכם את תפקידי ה-IAM הבאים בפרויקט:
-
כדי לשלוח שאילתות לדליים של היומנים
_Requiredו-_Default: צפייה ביומנים (roles/logging.viewer) -
כדי לשלוח שאילתות לכל תצוגות היומנים בפרויקט: גישה לתצוגות של יומנים (
roles/logging.viewAccessor)
כדי להגביל חשבון משתמש לתצוגת יומנים ספציפית, אתם יכולים להוסיף תנאי IAM להקצאת התפקיד "גישה לתצוגת יומנים" ברמת הפרויקט, או להוסיף קישור IAM לקובץ המדיניות של תצוגת היומנים. מידע נוסף זמין במאמר שליטה בגישה לתצוגת יומנים.
אלה אותן הרשאות שנדרשות כדי להציג רשומות ביומן בדף Logs Explorer. במאמר תפקידים ב-Cloud Logging מפורטים תפקידים נוספים שנדרשים כדי לשלוח שאילתות לתצוגות של קטגוריות בהגדרת המשתמש, או כדי לשלוח שאילתות לתצוגה
_AllLogsשל קטגוריית היומנים_Default. -
כדי לשלוח שאילתות לדליים של היומנים
-
כדי לקבל את ההרשאות שנדרשות לשליחת שאילתות לתצוגות ניתוח נתונים, בקשו מהאדמין להקצות לכם בפרויקט את התפקיד משתמש ב-Observability Analytics (
roles/observability.analyticsUser) ב-IAM. -
כדי לקבל את ההרשאות שנדרשות ליצירת תרשימים, בקשו מהאדמין להקצות לכם את התפקיד עריכת מעקב (
roles/monitoring.editor) ב-IAM בפרויקט.
בוחרים את הנתונים שרוצים להציג בתרשים.
כדי להגדיר אילו נתונים יוצגו בתרשים, יוצרים שאילתה באמצעות SQL. כשבוחרים בכרטיסייה Chart, תוצאות השאילתה מוצגות בתרשים. אחרי שמריצים את השאילתה ויוצרים תרשים, אפשר להתאים אישית את התרשים על ידי שינוי סוג התרשים ובחירת עמודות להצגת נתונים שונים.
כדי להציג את תוצאות השאילתה כתרשים, מריצים שאילתה באופן הבא:
-
נכנסים לדף manage_search Observability Analytics במסוף Google Cloud :
כניסה לדף Observability Analytics
אם אתם משתמשים בשורת החיפוש כדי למצוא את הדף הזה, בחרו בתוצאה עם כותרת המשנה Logging.
בחלונית Query, מזינים שאילתה ולוחצים על Run.
אחרי שהשאילתה מסתיימת, בכרטיסייה Results בוחרים איך רוצים לראות את תוצאות השאילתה:
טבלה: פורמט טבלאי בלבד.
תרשים: פורמט תרשים בלבד.
שניהם: תרשים וטבלה.
אחרי שבוחרים איך להציג את תוצאות השאילתה, אפשר להגדיר את השדות של התצוגה החזותית שנבחרה, ואז לשמור את השאילתה והתוצאות בלוח בקרה בהתאמה אישית. הפורמט שנשמר הוא טבלה אם בחרתם באפשרות Table. אחרת, הפורמט הוא תרשים.
בתרשימים, אפשרויות התצוגה החזותית מאפשרות לבחור את סוג התרשים ואת השורות והעמודות שיוצגו בו. מידע נוסף על הגדרת התרשים זמין במאמר התאמה אישית של הגדרת התרשים.
התאמה אישית של הגדרות התרשים
אתם יכולים להתאים אישית את הגדרת התרשים על ידי שינוי סוג התרשים, בחירת המאפיין והמדד לתרשים והחלת פירוט. המאפיין משמש לקיבוץ או לסיווג של שורות, והוא הערך של ציר ה-X. המדד, או הערך של ציר ה-Y, הוא סדרת נתונים שמשורטטת ביחס לציר ה-Y.
שינוי סוג התרשים
אתם יכולים לבחור מבין סוגי התרשימים הבאים, בהתאם לסוג השורות והעמודות שבחרתם בתור המאפיין והמדד, ואיך אתם רוצים להציג את הנתונים האלה באופן חזותי.
תרשים עמודות (ברירת המחדל): תרשימי עמודות מציגים נתונים בשני צירים. אם התרשים משתמש בקטגוריה או במחרוזת בתור המאפיין, אתם יכולים להגדיר את התצורה של תרשים העמודות לאופקי או לאנכי, שבהם הצירים של המאפיין והמדד מוחלפים.
תרשים קו: תרשימי קו יכולים לשמש להצגת שינויים בנתונים לאורך זמן. כשמשתמשים בתרשים קו, כל סדרת זמנים מוצגת בקו אחר שתואם למדדים שבחרתם.
אם ציר ה-X מבוסס על זמן, כל נקודה על הגרף ממוקמת בתחילת מרווח הזמן. כל נקודה על הגרף מחוברת באמצעות אינטרפולציה לינארית.
תרשים שטח מוערם: תרשים שטח מבוסס על תרשים קו, והשטח שמתחת לכל קו מוצלל. בתרשימי שטח, סדרות הנתונים מוערמות. לדוגמה, אם יש לכם שתי סדרות זהות, הסדרות חופפות בתרשים קו, אבל האזור המוצלל נערם בתרשים שטח.
תרשים עוגה או תרשים טבעת: תרשים עוגה מראה איך הקטגוריות בקבוצת נתונים קשורות לקבוצת הנתונים כולה. העיגול מייצג את כל קבוצת הנתונים, והפלחים בעיגול מייצגים את הקטגוריות בקבוצת הנתונים. הגודל של כל פלח מציין את מידת התרומה של הקטגוריה לשלם, בדרך כלל באחוזים.
טבלה: בטבלה מוצגת שורה אחת לכל שורה בתוצאת השאילתה. העמודות בטבלה מוגדרות על ידי המשפט
SELECT. אם אתם מתכננים להציג נתונים בטבלה בלוח בקרה, השתמשו בסעיףLIMITכדי להגביל את מספר השורות בתוצאה לפחות מכמה מאות.מד או כרטיס מידע: במדדים ובכרטיסי מידע מוצג הערך הכי עדכני, לצד אינדיקציה בצבע ירוק, כתום או אדום, בהתאם להשוואה בין הערך הזה לבין קבוצה של ערכי סף. בניגוד למדידים, שמציגים רק מידע על הערך האחרון, כרטיסי מידע יכולים לכלול גם מידע על ערכים קודמים.
במדדים ובכרטיסי מידע אפשר להציג את תוצאת השאילתה רק אם היא מכילה לפחות שורה אחת, והשורה הזו מכילה עמודה עם חותמת זמן ועמודה עם נתונים מספריים. תוצאת השאילתה יכולה להכיל כמה שורות ויותר משתי עמודות.
כדי לבצע צבירה מבוססת-זמן כחלק מהשאילתה:
מגדירים את השאילתה כך שתצבור נתונים נצברים על פני מרווח זמן, תסדר את התוצאות לפי חותמות זמן בסדר יורד ותגביל את מספר השורות בתוצאות. כדי להגביל את מספר השורות בתוצאות השאילתה, אפשר להשתמש בפסוקית
LIMITאו בבורר טווח תאריכים.לדוגמה, השאילתה הבאה שולחת שאילתה לתצוגת יומן, צוברת נתונים לפי שעה, מחילה מגבלה וממיינת את התוצאות:
SELECT TIMESTAMP_TRUNC(timestamp, HOUR) AS hour, severity, COUNT(*) AS count FROM `PROJECT_ID.LOCATION.BUCKET_ID.LOG_VIEW_ID` WHERE severity IS NOT NULL AND severity = "DEFAULT" GROUP BY hour,severity ORDER BY hour DESC LIMIT 10
המשמעות של השדות בביטוי הקודם:
- PROJECT_ID: מזהה הפרויקט.
- LOCATION: המיקום של תצוגת היומן או של תצוגת ניתוח הנתונים.
- BUCKET_ID: השם או המזהה של קטגוריית היומנים.
- LOG_VIEW_ID: המזהה של תצוגת היומן, שמוגבל ל-100 תווים ויכול לכלול רק אותיות, ספרות, קווים תחתונים ומקפים.
מגדירים את המאפיין כך שיתאים לעמודה שמדווחת על יחידת הזמן. לדוגמה, אם השאילתה צוברת נתונים לפי שעה ויוצרת עמודה בשם
hour, צריך להגדיר את התפריט Dimension לערךhour.בוחרים באפשרות Disable interval כי השאילתה כבר מציינת את מרווח הצבירה. בדוגמה, המרווח הזה הוא שעה אחת.
מגדירים את Measure לעמודה המספרית, ומגדירים את הפונקציה ל-none.
אם אתם רוצים להסתמך על Observability Analytics כדי לבצע את הצבירה לפי זמן, בצעו את הפעולות הבאות:
- מגדירים את בורר טווח התאריכים, שמשפיע על מספר השורות בתוצאות השאילתה.
- מגדירים את המאפיין כך שיתאים לעמודה שמדווחת על יחידת הזמן.
לדוגמה, אפשר להגדיר את התפריט הזה לערך
timestamp. - בתפריט Interval, מגדירים מרווח צבירה ספציפי.
לדוגמה, מגדירים את הערך של השדה הזה בתור
1 hour. אל תבחרו באפשרות Automatic interval. - מגדירים את Measure לעמודה המספרית ובוחרים פונקציה כמו sum.
שינוי המאפיין והמדד
כדי לבחור אילו שורות ועמודות יוצגו בתרשים, בוחרים את שדות המאפיינים והמדדים.
מאפיין
המאפיין חייב להיות עמודה של חותמת זמן, מספר או מחרוזת. כברירת מחדל, המאפיין מוגדר לעמודה הראשונה בסכימה שמבוססת על חותמת זמן. אם אין חותמת זמן בשאילתה, עמודת המחרוזת הראשונה נבחרת כמאפיין. אפשר גם להתאים אישית את המאפיין בחלונית Chart display. כשבוחרים עמודה של חותמת זמן בתור המאפיין, התרשים מציג את השינויים בנתונים לאורך זמן. כשבוחרים עמודת מחרוזת כמאפיין של תרשים עמודות, אפשר למיין את הנתונים בסדר עולה או יורד, וכך המאפיין ממוין בסדר לקסיקלי. אפשר גם להשאיר את סדר המיון default, שממיין את המאפיין לפי הערכים של המדד התואם בסדר יורד.
כברירת מחדל, המרווח בין חותמות הזמן מוגדר באופן אוטומטי, אבל אתם יכולים גם לבחור מרווח בהתאמה אישית. מרווחים אוטומטיים משנים את הערכים על סמך בורר טווח הזמן כדי לשמור על קבוצות בגודל דומה.
אפשר גם להשבית את המרווח, וכך לציין צבירות וטווחי תאריכים משלכם בתוך השאילתה, לצורך ניתוח מורכב יותר. השבתת המרווח מגדירה את פונקציית הצבירה של המדדים לערך
none. אפשר להשתמש רק במדדים מספריים כשמרווח המאפיין מושבת.מדידה
אפשר לבחור כמה מדדים בחלונית Chart display. כשבוחרים מדד, צריך גם לבחור את פונקציית הצבירה שתתבצע על הערכים המקובצים שלו, כמו
count,sum,averageו-percentile-99. לדוגמה, הפונקציהcount-distinctמחזירה את מספר הערכים הייחודיים בעמודה נתונה.אם מסמנים את התיבה Disable interval במאפיין, אפשר לבחור בפונקציית הצבירה
none. אם המאפיין הוא ערך מחרוזת, תיבת הסימון Disable interval לא מוצגת. עם זאת, אם מגדירים את פונקציות הצבירה של המדד לערךnone, גם המרווח מושבת.
הוספת פירוט
כדי לפצל סדרת נתונים אחת לכמה סדרות נתונים על סמך עמודה אחרת, מוסיפים פירוט.
כשבוחרים פירוט, כדאי לבחור עמודות שמכילות מספר קטן של תוויות קצרות ומשמעותיות, כמו region_name. אל תבחרו שדות שעשויים להכיל מספר גדול של מחרוזות או מחרוזות ארוכות, כמו textPayload.
לדוגמה, בתרשים הבא השדה Dimension מוגדר ל-type, השדה Measure מוגדר ל-Count rows והשדה Breakdown מוגדר ל-severity:

בצילום המסך הקודם מוצגת סדרת נתונים בערימה, שבה סוג המשאב k8s_container מפוצל לסוגים שונים של severity. כך אפשר לזהות כמה יומנים מכל סוג חומרה נוצרו על ידי משאב מסוים.
שמירת תרשים במרכז בקרה בהתאמה אישית
אחרי שנוצר תרשים מהשאילתה, אפשר לשמור אותו במרכז בקרה בהתאמה אישית. מרכזי בקרה בהתאמה אישית מאפשרים להציג ולארגן מידע שימושי באמצעות מגוון סוגים של ווידג'טים. בלוחות הבקרה האלה אפשר גם להגדיר משתנים, שהם מסננים ברמת לוח הבקרה שחלים רק על ווידג'טים ספציפיים. כדי להחיל משתנה על ווידג'ט, צריך לשנות את השאילתה. מידע נוסף זמין במאמר החלת משתנה על ווידג'ט.
בלוח הבקרה מוצגת הודעת אזהרה לווידג'ט שמכיל שאילתת SQL, כשהשאילתה פועלת במנוע BigQuery והמשאבים ששלחתם לגביהם שאילתה לא נמצאים באותו גבול בעלות. גבולות הבעלות נקבעים לפי כמה גורמים, כולל ההיררכיה של המשאבים שבהם משתמשים בשאילתה. כדי למנוע את האזהרות האלה, צריך להגדיר גבולות גזרה לשירות.
כדי לשמור את התרשים במרכז בקרה:
-
נכנסים לדף manage_search Observability Analytics במסוף Google Cloud :
כניסה לדף Observability Analytics
אם אתם משתמשים בשורת החיפוש כדי למצוא את הדף הזה, בחרו בתוצאה עם כותרת המשנה Logging.
מריצים שאילתה כדי ליצור תרשים ולוחצים על Save to dashboard.
בתיבת הדו-שיח Save to dashboard, נותנים שם לתרשים ובוחרים את מרכז הבקרה שבו רוצים לשמור את התרשים.
אופציונלי: כדי לראות את מרכז הבקרה בהתאמה אישית, לוחצים על View dashboard בהודעה הקצרה.
כדי לראות רשימה של מרכזי בקרה בהתאמה אישית שכוללים תרשימים שנוצרו על ידי שאילתות SQL, עוברים ללחצן Save to dashboard ולוחצים על arrow_drop_down Menu.
עריכת תרשים שנשמר במרכז בקרה בהתאמה אישית
אפשר לשנות תרשים אחרי ששומרים אותו במרכז בקרה. למידע נוסף, קראו את המאמר שינוי ההגדרות של ווידג'ט. בתיבת הדו-שיח Configure widget, אתם יכולים לבצע את הפעולות הבאות:
- לשנות את הנתונים שאתם שולחים לגביהם שאילתות.
- לערוך את השאילתה שמשמשת ליצירת תרשים.
- להתאים אישית את הגדרות התרשים כדי להציג נתונים שונים.
מגבלות
אם הפרויקט שלכם ב- Google Cloud נמצא בתיקייה שמשתמשת ב-Assured Workloads, התרשימים שתיצרו לא יוכלו להופיע במרכז בקרה בהתאמה אישית.
מסננים ברמת מרכז הבקרה לא חלים על תרשימים שנוצרו משאילתת SQL.
בעמודות שנבחרו צריכה להיות לפחות שורה אחת עם ערך שאינו null.
אם שומרים שאילתה ומתאימים אישית את הגדרות התרשים, ההגדרות המותאמות אישית של התרשים לא נשמרות.
אם השאילתה כבר מכילה צבירות, יכול להיות שהתרשים שנוצר יהיה שונה בגלל צבירה נוספת שמתבצעת באופן אוטומטי על ידי Observability Analytics.
כדי להציג נתיבי JSON בתרשים, צריך להמיר אותם למחרוזות או למספרים.
שאילתות לדוגמה
בקטע הזה מופיעות שאילתות SQL לדוגמה ליצירת תרשימים של תוצאות השאילתות. כדי לקבל תובנות שימושיות יותר מהיומנים, אפשר להתאים אישית את הגדרות התרשים. כדי להשתמש בשאילתות לדוגמה:
-
נכנסים לדף manage_search Observability Analytics במסוף Google Cloud :
כניסה לדף Observability Analytics
אם אתם משתמשים בשורת החיפוש כדי למצוא את הדף הזה, בחרו בתוצאה עם כותרת המשנה Logging.
מזהים את שם הטבלה של תצוגת היומן שרוצים לשלוח אליה שאילתה.
כדי לזהות את השם, עוברים לרשימה Log views, מאתרים את תצוגת היומן ובוחרים באפשרות Query. בחלונית Query מופיעה שאילתת ברירת מחדל, שכוללת את שם הטבלה של תצוגת היומן שעליה נשלחת השאילתה. שם הטבלה הוא בפורמט
project_ID.region.bucket_ID.view_ID.למידע נוסף על הגישה לשאילתת ברירת המחדל, ראו שליחת שאילתה לתצוגת יומן.
מחליפים את VIEW בשם הטבלה של תצוגת היומן שרוצים לשלוח אליה שאילתה, ואז מעתיקים את השאילתה.
מדביקים את השאילתה בחלונית Query ולוחצים על Run query.
תרשים של רשומות ביומן לפי מיקום וחומרה
השאילתה הבאה בוחרת את location ו-severity, כשהמיקום מוגדר כמחרוזת:
SELECT
CAST(JSON_VALUE(resource.labels.location) AS STRING) AS location,
severity,
FROM
`VIEW`
WHERE resource.labels.location IS NOT NULL
כך נראים תרשים לדוגמה והגדרת התרשים:
בצילום המסך הקודם, הגדרת התרשים כוללת את ההגדרות הבאות:
- סוג התרשים: תרשים עמודות אופקי
- מאפיין:
location, עם מגבלה של 10 - מדד: ספירת שורות
- פירוט:
severity, עד חמישה
תרשים של יומני הביקורת Data Access ב-BigQuery
השאילתה הבאה מסננת את יומני הביקורת של BigQuery data_access, ובוחרת שדות מסוימים, כמו user_email, ip, auth_permission ו-job_execution_project. לדוגמה, אפשר ליצור תרשים שמציג את תדירות השימוש של כל חשבון משתמש ב-BigQuery API לאורך זמן.
SELECT
timestamp,
proto_payload.audit_log.authentication_info.principal_email as user_email,
proto_payload.audit_log.request_metadata.caller_ip as ip,
auth.permission as auth_permission,
auth.granted as auth_granted,
JSON_VALUE(data_access.resource.labels.project_id) AS job_execution_project,
SPLIT(proto_payload.audit_log.resource_name, '/')[SAFE_OFFSET(1)] AS referenced_project,
SPLIT(proto_payload.audit_log.resource_name, '/')[SAFE_OFFSET(3)] AS referenced_dataset,
SPLIT(proto_payload.audit_log.resource_name, '/')[SAFE_OFFSET(5)] AS referenced_table
FROM `VIEW` as data_access,
UNNEST(proto_payload.audit_log.authorization_info) AS auth
WHERE
log_id="cloudaudit.googleapis.com/data_access"
AND data_access.resource.type = 'bigquery_dataset'
כך נראים תרשים לדוגמה והגדרת התרשים:
בצילום המסך הקודם, הגדרת התרשים כוללת את הפרטים הבאים:
- סוג התרשים: תרשים עמודות אנכי
- מאפיין:
user_email, עד חמישה מאפיינים - מדד: ספירת שורות
- פירוט:
auth_permission, עד חמישה
המאמרים הבאים
סקירה כללית על Observability Analytics, ראו סקירה כללית על שאילתות וניתוח של יומנים.
במאמר שאילתות SQL לדוגמה תוכלו למצוא דוגמאות לשאילתות.
כדי ללמוד איך לנתח באמצעות יומני ביקורת באמצעות Observability Analytics, ראו שאילתות SQL לתובנות בנושא אבטחה.