בעזרת Observability Analytics אתם יכולים לשמור ולשתף שאילתות SQL כדי להריץ מחדש חקירות תכופות ב-Cloud Trace ולשתף פעולה עם חברי הצוות בפרויקט. אפשר לשמור את השאילתות כך שיהיו פרטיות לשימושכם האישי, או לשתף אותן עם חברים אחרים בפרויקט. אם לא כתבתם שאילתות ב-Observability Analytics, כדאי קודם לעיין במאמר בנושא שאילתות וניתוח של עקבות.
לפני שמתחילים
מגדירים את הפרויקט ואת תפקידי ה-IAM, ובוחרים את הממשק שמתכננים להשתמש בו.
הגדרת הפרויקט והתפקידים
- נכנסים לחשבון Google Cloud . אנחנו ממליצים למשתמשים חדשים ב- Google Cloud ליצור חשבון כדי שיוכלו להעריך את הביצועים של המוצרים שלנו בתרחישים מהעולם האמיתי. לקוחות חדשים מקבלים בחינם גם קרדיט בשווי 300$ להרצה, לבדיקה ולפריסה של עומסי העבודה.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Observability API, if it is not already enabled.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Observability API, if it is not already enabled.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.-
כדי לקבל את ההרשאות שדרושות לטעינת הדף Observability Analytics, לכתיבה, להרצה ולשמירה של שאילתות פרטיות בנתוני המעקב, צריך לבקש מהאדמין להקצות לכם את תפקידי ה-IAM הבאים:
- Observability View Accessor (
roles/observability.viewAccessor) on the observability views that you want to query. התפקיד הזה תומך בתנאי IAM, שמאפשרים להגביל את ההרשאה לתצוגה ספציפית. אם לא מצרפים תנאי למתן התפקיד, לחשבון המשתמש תהיה גישה לכל תצוגות הנתונים של יכולת התצפית. - משתמש עם הרשאת ניתוח נתוני יכולת צפייה (
roles/observability.analyticsUser) בפרויקט. התפקיד הזה כולל את ההרשאות שנדרשות לשמירה ולהרצה של שאילתות פרטיות, ולהרצה של שאילתות משותפות.
להסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.
יכול להיות שאפשר לקבל את ההרשאות הנדרשות גם באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש.
- Observability View Accessor (
בחירת הממשק שבו רוצים להשתמש
המסוף
כשמשתמשים במסוף Google Cloud כדי לגשת לשירותים Google Cloud ולממשקי ה-API, לא צריך להגדיר אימות.
gcloud
במסוף Google Cloud , מפעילים את Cloud Shell.
בחלק התחתון של Google Cloud המסוף יתחיל סשן של Cloud Shell ותופיע הודעה של שורת הפקודה. Cloud Shell היא סביבת מעטפת שבה ה-CLI של Google Cloud מותקן ומוגדרים ערכים לפרויקט הקיים. הסשן יופעל תוך כמה שניות.
REST
כדי להשתמש בסביבת פיתוח מקומית בדוגמאות של API בארכיטקטורת REST שבדף הזה, צריך להשתמש בפרטי הכניסה שאתם נותנים ל-CLI של gcloud.
התקינו את ה-CLI של Google Cloud.
אם אתם משתמשים בספק זהויות חיצוני (IdP), קודם אתם צריכים להיכנס ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.
מידע נוסף מופיע במאמר אימות לשימוש ב-REST במסמכי האימות של Google Cloud .
שמירת שאילתה
כל השאילתות שאתם מריצים נשמרות אוטומטית למשך 30 ימים, ואפשר לגשת אליהן דרך הכרטיסייה אחרונות בדף ניתוח נתונים של יכולת התצפית. אפשר לחפש, להציג, להריץ ולשתף את השאילתות שמופיעות בכרטיסייה מהזמן האחרון.
כדי לעשות שימוש חוזר בשאילתה, להוסיף תיאורים מותאמים אישית או לשתף אותה עם חברי הצוות, צריך לשמור את השאילתה. אתם יכולים לחפש ולמיין את השאילתות השמורות לפי השם, התיאור ותווית החשיפה שלהן. אפשר גם לערוך ולמחוק את השאילתות האלה. השאילתות שאתם שומרים נשמרות עד שאתם מוחקים אותן.
אפשר לשמור 10,000 שאילתות לכל Google Cloud פרויקט.
המסוף
כדי לשמור שאילתה:
-
נכנסים לדף manage_search Observability Analytics במסוף Google Cloud :
עוברים אל Observability Analytics
אם משתמשים בסרגל החיפוש כדי למצוא את הדף הזה, בוחרים בתוצאה שכותרת המשנה שלה היא Logging.
מאכלסים את החלונית שאילתה בשאילתה.
כדי לאכלס את החלונית שאילתה, מזינים שאילתה חדשה, בוחרים שאילתה מהכרטיסייה מהזמן האחרון או בוחרים שאילתה מהכרטיסייה שמורות.
השאילתה יכולה לכלול כל תצוגה מפורטת תקפה, כמה תצוגות מפורטות ותצוגות מפורטות של Analytics.
אם השאילתה בחלונית שאילתה תקינה, הכפתור שמירה מופעל.
לוחצים על שמירה, בוחרים באפשרות שמירת השאילתה וממלאים את השדות שם ותיאור. הערכים שאתם מגדירים בשדות האלה מוצגים בכרטיסייה שמורים.
אופציונלי: כדי לאפשר לכל מי שיש לו גישה לדף Observability Analytics בתצוגת הפרויקט Google Cloud להציג ולהריץ את השאילתה השמורה, מפעילים את המתג Share with project.
כברירת מחדל, המתג הזה מושבת והגישה מוגבלת רק לכם.
לוחצים על שמירת השאילתה.
אופציונלי: כדי לראות, למיין ולהריץ שאילתות שמורות שגלויות לכם, בוחרים בכרטיסייה Saved.
אפשר למיין ולסנן את השאילתות השמורות לפי השם, התיאור ותווית החשיפה שלהן. אפשר גם לסנן לפי תוכן השאילתה.
אפשר לערוך ולמחוק שאילתות שיצרתם באמצעות האפשרויות שבכרטיסייה שמורות:
כדי לערוך שאילתה, לוחצים על more_vert אפשרויות נוספות ובוחרים באפשרות עריכה. אפשר לשנות את הערכים בשדות שם ותיאור, אבל אי אפשר לשנות את השאילתה עצמה.
כדי למחוק שאילתה שמורה, לוחצים על more_vert אפשרויות נוספות ובוחרים באפשרות מחיקה.
gcloud
כדי ליצור ולשמור שאילתה:
-
לפני השימוש בנתוני הפקודה הבאים, צריך להחליף את הנתונים הבאים:
- DISPLAY_NAME: השם המוצג של השאילתה השמורה.
- LOCATION: המיקום של השאילתה השמורה.
- VISIBILITY: הערך צריך להיות
privateאוshared. - SQL_QUERY: שאילתת SQL. אם נתיב או שדות בנתיב מוקפים במירכאות הפוכות בודדות
(`), צריך להוסיף תו בריחה למירכאות ההפוכות האלה:"SELECT * FROM \`PROJECT_ID.LOCATION.my-log-bucket._AllLogs\`"או
"SELECT * FROM \`PROJECT_ID.LOCATION._Trace.Spans._AllSpans\`"צריך להשתמש בגרש הפוך
(`)כשאלמנט של נתיב מכיל נקודה(.). - ID: המזהה של השאילתה השמורה. המזהה הזה הוא קלט חובה לפקודות שמתארות, מעדכנות או מוחקות שאילתה שמורה. אם לא תציינו את המזהה כשתיצרו שאילתה שמורה, המערכת תיצור מזהה מספרי.
- DESCRIPTION: תיאור טקסטואלי של השאילתה. זה שינוי אופציונלי.
- PROJECT_ID: מזהה הפרויקט.
מריצים את הפקודה
gcloud logging saved-queries create:Linux, macOS או Cloud Shell
gcloud logging saved-queries create --display-name=DISPLAY_NAME \ --location=LOCATION --visibility=VISIBILITY --sql-query-text=SQL_QUERY \ --id=ID --description=DESCRIPTION --project=PROJECT_ID
Windows (PowerShell)
gcloud logging saved-queries create --display-name=DISPLAY_NAME ` --location=LOCATION --visibility=VISIBILITY --sql-query-text=SQL_QUERY ` --id=ID --description=DESCRIPTION --project=PROJECT_ID
Windows (cmd.exe)
gcloud logging saved-queries create --display-name=DISPLAY_NAME ^ --location=LOCATION --visibility=VISIBILITY --sql-query-text=SQL_QUERY ^ --id=ID --description=DESCRIPTION --project=PROJECT_ID
זוהי דוגמה לתגובה כשמזהה המשתמש שצוין בפקודה היה
my-saved-query:Created saved query [projects/PROJECT_ID/locations/LOCATION/savedQueries/my-saved-query].
התשובה לפקודה
createמפרטת את השם המלא של השאילתה, שכולל את מזהה השאילתה. מזהה השאילתה, שהואmy-saved-queryבדוגמה הזו, הוא קלט חובה לפקודות Google Cloud CLI שמתארות, מוחקות או מעדכנות שאילתה שמורה. כדי לבדוק את השאילתה השמורה, מריצים את הפקודה הבאה:
gcloud logging saved-queries list --location=- --project=PROJECT_IDבביטוי הקודם, הערך של המיקום הוא מקף
(-), שמשמש כתו כללי. אפשר גם לציין מיקום ספציפי.
יש פקודות Google Cloud CLI למחיקה, להצגה, לתיאור ולעדכון של שאילתות שמורות. מידע נוסף זמין במאמר סקירה כללית על gcloud logging saved-queries.
REST
אפשר לשמור שאילתה באמצעות Cloud Logging API. כדי לשמור שאילתה, משתמשים בשיטה savedQueries.create.
כדי להפעיל את השיטה הזו:
- לוחצים על
savedQueries.create. - בדף ההפניה, משתמשים ב-APIs Explorer כדי להנפיק פקודה. חובה לציין את השדה
opsAnalyticsQuery.
בדוגמה הבאה מוצג גוף בקשה לדוגמה, שמכיל מופע של SavedQuery:
{
"parent": "projects/my-project/locations/global"
"saved_query":
{
"ops_analytics_query":
{
"sql_query_text" :
"SELECT
timestamp, log_name, severity, json_payload, resource, labels
FROM
`VIEW`
WHERE
timestamp > TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 1 HOUR)
ORDER BY timestamp ASC
LIMIT 100"
}
"visibility": "PRIVATE"
}
}
שיתוף שאילתה
אתם יכולים לשתף שאילתה שמורה עם כל מי שיש לו גישה לפרויקטGoogle Cloud שלכם. עם זאת, תפקידי ה-IAM של החשבון הראשי קובעים אם אפשר להריץ את השאילתה ואילו נתונים השאילתה מחזירה.
המסוף
כשמנסים לפתור בעיה או כשרואים תוצאות חריגות, יכול להיות שתרצו לשתף שאילתה ואת התוצאות שלה עם חבר צוות. כשצופים בתוצאות של שאילתה בדף Observability Analytics, אפשר להעתיק כתובת URL, וכשפותחים אותה, מוצגת השאילתה שהפעלתם והתוצאות שלה.
כדי לשתף שאילתה ותוצאות עם חבר צוות:
-
נכנסים לדף manage_search Observability Analytics במסוף Google Cloud :
עוברים אל Observability Analytics
אם משתמשים בסרגל החיפוש כדי למצוא את הדף הזה, בוחרים בתוצאה שכותרת המשנה שלה היא Logging.
מאכלסים את החלונית Query בשאילתה ולוחצים על Run query.
אפשר לאכלס את החלונית שאילתה על ידי הזנת שאילתה חדשה, בחירת שאילתה מהכרטיסייה מהזמן האחרון או בחירת שאילתה מהכרטיסייה שמורות.
לוחצים על link שיתוף הקישור.
שולחים את הקישור לחבר הצוות.
כשחבר הצוות יפתח את הקישור, הדף Observability Analytics ייפתח ויוצג, אבל השאילתה לא תופעל. החבר או החברה בצוות צריכים להריץ את השאילתה באופן ידני.
בדף Observability Analytics מוצג דיאלוג אזהרה כשמריצים את השאילתה במנוע BigQuery והמשאבים שנכללים בשאילתה לא נמצאים באותו גבול בעלות. גבולות הבעלות נקבעים לפי כמה גורמים, שאחד מהם הוא ההיררכיה של המשאבים שבהם נעשה שימוש בשאילתה.
כדי שחבר הצוות יוכל לפתוח את כתובת ה-URL, תפקיד ה-IAM שלו בפרויקט Google Cloud צריך לכלול את ההרשאות שנדרשות כדי לצפות בדף Observability Analytics.
gcloud
כדי ליצור שאילתה שמורה שאחרים יכולים להריץ, צריך להגדיר את הערך של השדה visibility ל-shared:
--visibility=shared
כדי לשנות את ההגדרה של הניראות של שאילתה שמורה קיימת, משתמשים בפקודה update. מידע נוסף על הפקודות הזמינות מופיע במאמר סקירה כללית של gcloud logging saved-queries.
REST
אפשר להשתמש ב-Logging API כדי ליצור שאילתה משותפת באמצעות ה-method savedQueries.create, ולציין ערך של SHARED בשדה visibility. מידע נוסף זמין בדף העזרה בנושא savedQueries.create.
הצגה והפעלה של שאילתות אחרונות או שמורות
כדי לראות או להריץ מחדש שאילתה, בוחרים בכרטיסייה Recent בדף Observability Analytics ומחפשים את השאילתה:
- כדי להריץ את השאילתה, לוחצים על Run.
- כדי לראות את השאילתה, משתמשים באפשרויות בתפריט more_vert אפשרויות נוספות.
כדי להציג, לערוך או להריץ שאילתה שמורה, בוחרים בכרטיסייה Saved בדף Observability Analytics ומחפשים את השאילתה:
- כדי להריץ את השאילתה, לוחצים על Run.
- כדי לערוך, לראות או למחוק את השאילתה, משתמשים באפשרויות בתפריט more_vert אפשרויות נוספות.
המאמרים הבאים
- יצירת תרשים של תוצאות שאילתת SQL
- שאילתות SQL לדוגמה
- הרצת שאילתות במערך נתונים מקושר של BigQuery ב-BigQuery