התכונה 'תיעוד ביצועים' מאפשרת לאבחן בעיות זמניות במסד הנתונים. היא מתעדת מדדים מפורטים של המופע כשהביצועים ירודים. כדי להשתמש בתיעוד הביצועים, צריך להפעיל את תיעוד הביצועים במופע ולהגדיר את ערכי הסף שמפעילים את התמונות המפורטות של המופע ב-Cloud SQL שמבוססות על מדדים.
לפני שמתחילים
כדי להשתמש בתיעוד הביצועים, צריך להפעיל את התכונה 'תובנות לגבי שאילתות' במופע.
התפקידים הנדרשים
כדי לקבל את ההרשאות שדרושות ליצירת מכונה ולהפעלת איסוף נתוני הביצועים, צריך לבקש מהאדמין להקצות לכם את תפקידי ה-IAM הבאים בפרויקט:
- Cloud SQL Admin (
roles/cloudsql.admin) - צפייה ב-Compute (
roles/compute.viewer)
להסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.
יכול להיות שאפשר לקבל את ההרשאות הנדרשות גם באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש.
הפעלה והגדרה של תיעוד הביצועים
אפשר להפעיל את התכונה 'תיעוד ביצועים' כשיוצרים או מעדכנים את המכונה של Cloud SQL.
gcloud
יצירה והגדרה של מופע
כדי להפעיל את איסוף נתוני הביצועים כשיוצרים את מכונת Cloud SQL, מריצים את הפקודה הבאה:
gcloud beta sql instances create INSTANCE_NAME \ --database-version=DATABASE_VERSION \ --region=REGION \ --tier=TIER \ --edition=EDITION_TYPE \ --performance-capture-config="enabled=true,PROBE_CONFIGURATION,PERFORMANCE_CAPTURE_THRESHOLDS"
מחליפים את מה שכתוב בשדות הבאים:
- INSTANCE_NAME: שם המכונה
- DATABASE_VERSION: גרסת מסד הנתונים.
לדוגמה:
MYSQL_8_4אוMYSQL_8_0_37. אם לא מציינים גרסת מסד נתונים, גרסת מסד הנתונים שמוגדרת כברירת מחדל היאMYSQL_8_0. - REGION: האזור
- TIER: סוג המכונה
- EDITION_TYPE: מהדורת Cloud SQL שלכם
בשביל הדגל performance-capture-config, מוסיפים enabled=true. באותה הגדרה של הדגל, אפשר לציין הגדרות אופציונליות ל-PROBE_CONFIGURATION ול-PERFORMANCE_CAPTURE_THRESHOLDS, או לציין אותן מאוחר יותר על ידי עדכון המופע.
לדוגמה:
gcloud beta sql instances create my-instance \ --database-version=MYSQL_8_0 \ --edition=ENTERPRISE_PLUS \ --tier=db-perf-optimized-N-4 \ --region=us-west1 \ --performance-capture-config="enabled=true,probing-interval-seconds=30,probe-threshold=5,running-threads-threshold=10,transaction-duration-threshold=300"
עדכון של מכונה קיימת
כדי להפעיל את התכונה 'תיעוד ביצועים' במכונת Cloud SQL קיימת, מריצים את הפקודה הבאה:
gcloud beta sql instances patch INSTANCE_NAME \ --performance-capture-config="enabled=true,PROBE_CONFIGURATION,PERFORMANCE_CAPTURE_THRESHOLDS"
בשביל הדגל performance-capture-config, מוסיפים enabled=true.
באותו דגל, אפשר לציין הגדרות אופציונליות ל-PROBE_CONFIGURATION ול-PERFORMANCE_CAPTURE_THRESHOLDS.
אפשר גם להשתמש בפקודה gcloud beta sql instances patch כדי לעדכן את ערכי ההגדרות של הסף לתיעוד הביצועים במופע קיים.
הגדרת מרווח הזמן בין בדיקות וסדרת בדיקות של מדדי ביצועים
אפשר להחליף את PROBE_CONFIGURATION באחת מההגדרות הבאות של הדגל או בשתיהן. אם לא מגדירים את הדגלים, סוכן המעקב משתמש בערך ברירת המחדל.
-
probing-interval-seconds=SECONDS: מספר שלם בין20ל-86400. מרווח הזמן בשניות בין בדיקות המדדים. לדוגמה,30, 60, 100. ערך ברירת המחדל הוא30. -
probe-threshold=PROBES: מספר הפעמים הרצופות שצריך לחרוג מסף מסוים כדי להפעיל את תיעוד הביצועים. הטווח התקין הוא1עד20. ערך ברירת המחדל הוא3.
הגדרת ספי ביצועים
אפשר להחליף את PERFORMANCE_CAPTURE_THRESHOLDS באחת או יותר מהגדרות הדגל הבאות. אם לא מגדירים ערכים לדגלים, סוכן המעקב משתמש בערכי ברירת המחדל של ערכי הסף.
-
running-threads-threshold=THREADS: עבור מופעים ראשיים, מספר השרשורים הפעילים המינימלי שנחשב מעל הסף. לדוגמה,10. הערך חייב להיות גדול מ-10או שווה לו. אם לא מגדירים את הערך, ברירת המחדל מבוססת על גודל המופע. ערך ברירת המחדל הואMIN(600, cpuCount * 20). -
seconds-behind-source-threshold=SECONDS: עבור עותקים לקריאה, השהיית השכפול המינימלית, בשניות, שנחשבת מעל ערך הסף. הערך חייב להיות גדול מ-0. ערך ברירת המחדל הוא900. -
transaction-duration-threshold=SECONDS: משך הזמן, בשניות, של טרנזקציה שלא בוצעה לפני שהטרנזקציה מתועדת ונכללת ביומן של תיעוד הביצועים. לדוגמה,300, 600. הערך המינימלי הוא60. ערך ברירת המחדל הוא3600.
REST v1
יצירה והגדרה של מופע
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
- PROJECT_ID: מזהה הפרויקט
- INSTANCE_ID: מזהה המכונה
- DATABASE_VERSION: גרסת מסד הנתונים.
לדוגמה:
MYSQL_8_4אוMYSQL_8_0_37. אם לא מציינים גרסת מסד נתונים, גרסת מסד הנתונים שמוגדרת כברירת מחדל היאMYSQL_8_4. - REGION: האזור
- MACHINE_TYPE: סוג המכונה
- EDITION_TYPE: מהדורת Cloud SQL שלכם
- PROBING_INTERVAL_SECONDS: מספר שלם בין
20ל-86400. מרווח הזמן בשניות בין בדיקות המדדים. ערך ברירת המחדל הוא30. - PROBE_THRESHOLD: מספר הפעמים הרצופות שצריך לחרוג מסף מסוים כדי להפעיל את תיעוד הביצועים. הטווח התקין הוא
1עד20. ערך ברירת המחדל הוא3. - RUNNING_THREADS_THRESHOLD: במופעים ראשיים, מספר השרשורים הפעילים המינימלי שנחשב מעל הסף. לדוגמה,
10. הערך חייב להיות גדול מ-10או שווה לו. אם לא מגדירים את הערך, ברירת המחדל מבוססת על גודל המופע. ערך ברירת המחדל הואMIN(600, cpuCount * 20). - SECONDS_BEHIND_SOURCE_THRESHOLD: לגבי העתקי קריאה, השהיית השכפול המינימלית בשניות, שנחשבת מעל ערך הסף. הערך חייב להיות גדול מ-
0. ערך ברירת המחדל הוא900. - TRANSACTION_DURATION_THRESHOLD: משך הזמן, בשניות, של טרנזקציה לא מחויבת לפני שהמערכת עוקבת אחריה וכוללת אותה ביומן של תיעוד הביצועים.
לדוגמה,
300, 600. הערך המינימלי הוא60. ערך ברירת המחדל הוא3600.
ה-method של ה-HTTP וכתובת ה-URL:
POST https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances
תוכן בקשת JSON:
{
"name": "INSTANCE_ID",
"region": "REGION",
"databaseVersion": "DATABASE_VERSION",
"settings": {
"tier": "MACHINE_TYPE",
"edition": "EDITION_TYPE"
},
"performanceCaptureConfig": {
"enabled": true,
"probingIntervalSeconds": PROBING_INTERVAL_SECONDS,
"probeThreshold": PROBE_THRESHOLD,
"runningThreadsThreshold": RUNNING_THREADS_THRESHOLD,
"secondsBehindSourceThreshold": SECONDS_BEHIND_SOURCE_THRESHOLD,
"transactionDurationThreshold": TRANSACTION_DURATION_THRESHOLD
}
}
כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:
אתם אמורים לקבל תגובת JSON שדומה לזו:
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2025-11-10T22:19:33.735Z",
"operationType": "CREATE",
"name": "OPERATION_ID",
"targetId": "INSTANCE_ID",
"selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/operations/OPERATION_ID",
"targetProject": "PROJECT_ID"
}
עדכון של מכונה קיימת
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
- PERFORMANCE_CAPTURE_ENABLE: מגדירים את הערך
trueכדי להפעיל את תכונת תיעוד הביצועים של המופע. - PROBING_INTERVAL_SECONDS: מספר שלם בין
20ל-86400. מרווח הזמן בשניות בין בדיקות המדדים. ערך ברירת המחדל הוא30. - PROBE_THRESHOLD: מספר הפעמים הרצופות שצריך לחרוג מסף מסוים כדי להפעיל את תיעוד הביצועים. הטווח התקין הוא
1עד20. ערך ברירת המחדל הוא3. - RUNNING_THREADS_THRESHOLD: במופעים ראשיים, מספר השרשורים הפעילים המינימלי שנחשב מעל הסף. לדוגמה,
10. הערך חייב להיות גדול מ-10או שווה לו. אם לא מגדירים את הערך, ברירת המחדל מבוססת על גודל המופע. ערך ברירת המחדל הואMIN(600, cpuCount * 20). - SECONDS_BEHIND_SOURCE_THRESHOLD: לגבי העתקי קריאה, השהיית השכפול המינימלית בשניות, שנחשבת מעל ערך הסף. הערך חייב להיות גדול מ-
0. ערך ברירת המחדל הוא900. - TRANSACTION_DURATION_THRESHOLD: משך הזמן, בשניות, של טרנזקציה לא מחויבת לפני שהמערכת עוקבת אחריה וכוללת אותה ביומן של תיעוד הביצועים.
לדוגמה,
300, 600. הערך המינימלי הוא60. ערך ברירת המחדל הוא3600.
ה-method של ה-HTTP וכתובת ה-URL:
PATCH https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID
תוכן בקשת JSON:
{
"performanceCaptureConfig": {
"enabled": PERFORMANCE_CAPTURE_ENABLE,
"probingIntervalSeconds": PROBING_INTERVAL_SECONDS,
"probeThreshold": PROBE_THRESHOLD,
"runningThreadsThreshold": RUNNING_THREADS_THRESHOLD,
"secondsBehindSourceThreshold": SECONDS_BEHIND_SOURCE_THRESHOLD,
"transactionDurationThreshold": TRANSACTION_DURATION_THRESHOLD
},
}
כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:
אתם אמורים לקבל תגובת JSON שדומה לזו:
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2025-11-10T22:19:33.735Z",
"operationType": "UPDATE",
"name": "OPERATION_ID",
"targetId": "INSTANCE_ID",
"selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/operations/OPERATION_ID",
"targetProject": "PROJECT_ID"
}
REST v1beta4
יצירה והגדרה של מופע
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
- PROJECT_ID: מזהה הפרויקט
- INSTANCE_ID: מזהה המכונה
- DATABASE_VERSION: גרסת מסד הנתונים.
לדוגמה:
MYSQL_8_4אוMYSQL_8_0_37. אם לא מציינים גרסת מסד נתונים, גרסת מסד הנתונים שמוגדרת כברירת מחדל היאMYSQL_8_4. - REGION: האזור
- MACHINE_TYPE: סוג המכונה
- EDITION_TYPE: מהדורת Cloud SQL שלכם
- PROBING_INTERVAL_SECONDS: מספר שלם בין
20ל-86400. מרווח הזמן בשניות בין בדיקות המדדים. ערך ברירת המחדל הוא30. - PROBE_THRESHOLD: מספר הפעמים הרצופות שצריך לחרוג מסף מסוים כדי להפעיל את תיעוד הביצועים. הטווח התקין הוא
1עד20. ערך ברירת המחדל הוא3. - RUNNING_THREADS_THRESHOLD: במופעים ראשיים, מספר השרשורים הפעילים המינימלי שנחשב מעל הסף. לדוגמה,
10. הערך חייב להיות גדול מ-10או שווה לו. אם לא מגדירים את הערך, ברירת המחדל מבוססת על גודל המופע. ערך ברירת המחדל הואMIN(600, cpuCount * 20). - SECONDS_BEHIND_SOURCE_THRESHOLD: לגבי העתקים לקריאה, השהיית השכפול המינימלית בשניות, שנחשבת מעל ערך הסף. הערך חייב להיות גדול מ-
0. ערך ברירת המחדל הוא900. - TRANSACTION_DURATION_THRESHOLD: משך הזמן, בשניות, של טרנזקציה לא מחויבת לפני שהמערכת עוקבת אחריה וכוללת אותה ביומן של תיעוד הביצועים.
לדוגמה,
300, 600. הערך המינימלי הוא60. ערך ברירת המחדל הוא3600.
ה-method של ה-HTTP וכתובת ה-URL:
POST https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances
תוכן בקשת JSON:
{
"name": "INSTANCE_ID",
"region": "REGION",
"databaseVersion": "DATABASE_VERSION",
"settings": {
"tier": "MACHINE_TYPE",
"edition": "EDITION_TYPE",
},
"performanceCaptureConfig": {
"enabled": true,
"probingIntervalSeconds": PROBING_INTERVAL_SECONDS,
"probeThreshold": PROBE_THRESHOLD,
"runningThreadsThreshold": RUNNING_THREADS_THRESHOLD,
"secondsBehindSourceThreshold": SECONDS_BEHIND_SOURCE_THRESHOLD,
"transactionDurationThreshold": TRANSACTION_DURATION_THRESHOLD
},
}
כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:
אתם אמורים לקבל תגובת JSON שדומה לזו:
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2025-11-10T22:19:33.735Z",
"operationType": "CREATE",
"name": "OPERATION_ID",
"targetId": "INSTANCE_ID",
"selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/operations/OPERATION_ID",
"targetProject": "PROJECT_ID"
}
עדכון של מכונה קיימת
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
- PERFORMANCE_CAPTURE_ENABLE: מגדירים את הערך
trueכדי להפעיל את תכונת תיעוד הביצועים של המופע. - PROBING_INTERVAL_SECONDS: מספר שלם בין
20ל-86400. מרווח הזמן בשניות בין בדיקות המדדים. ערך ברירת המחדל הוא30. - PROBE_THRESHOLD: מספר הפעמים הרצופות שצריך לחרוג מסף מסוים כדי להפעיל את תיעוד הביצועים. הטווח התקין הוא
1עד20. ערך ברירת המחדל הוא3. - RUNNING_THREADS_THRESHOLD: במופעים ראשיים, מספר השרשורים הפעילים המינימלי שנחשב מעל הסף. לדוגמה:
10. הערך חייב להיות גדול מ-10או שווה לו. אם לא מגדירים את הערך, ברירת המחדל מבוססת על גודל המופע. ערך ברירת המחדל הואMIN(600, cpuCount * 20). - SECONDS_BEHIND_SOURCE_THRESHOLD: לגבי העתקי קריאה, השהיית השכפול המינימלית בשניות, שנחשבת מעל ערך הסף. הערך חייב להיות גדול מ-
0. ערך ברירת המחדל הוא900. - TRANSACTION_DURATION_THRESHOLD: משך הזמן, בשניות, של טרנזקציה לא מחויבת לפני שהמערכת עוקבת אחריה וכוללת אותה ביומן של תיעוד הביצועים.
לדוגמה,
300, 600. הערך המינימלי הוא60. ערך ברירת המחדל הוא3600.
ה-method של ה-HTTP וכתובת ה-URL:
PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID
תוכן בקשת JSON:
{
"performanceCaptureConfig": {
"enabled": PERFORMANCE_CAPTURE_ENABLE,
"probingIntervalSeconds": PROBING_INTERVAL_SECONDS,
"probeThreshold": PROBE_THRESHOLD,
"runningThreadsThreshold": RUNNING_THREADS_THRESHOLD,
"secondsBehindSourceThreshold": SECONDS_BEHIND_SOURCE_THRESHOLD,
"transactionDurationThreshold": TRANSACTION_DURATION_THRESHOLD
},
}
כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:
אתם אמורים לקבל תגובת JSON שדומה לזו:
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2025-11-10T22:19:33.735Z",
"operationType": "UPDATE",
"name": "OPERATION_ID",
"targetId": "INSTANCE_ID",
"selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/operations/OPERATION_ID",
"targetProject": "PROJECT_ID"
}
השבתת צילום הביצועים
כדי להשבית את תיעוד הביצועים, משתמשים בפקודה הבאה.
gcloud
gcloud beta sql instances patch INSTANCE_NAME \ --performance-capture-config="enabled=false"
מחליפים את INSTANCE_NAME בשם המכונה שבה רוצים להשבית את תיעוד הביצועים.
REST v1
ה-method של ה-HTTP וכתובת ה-URL:
PATCH https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID
תוכן בקשת JSON:
{
"performanceCaptureConfig": {
"enabled": false
}
}
כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:
אתם אמורים לקבל תגובת JSON שדומה לזו:
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "INSERT_TIME",
"operationType": "UPDATE",
"name": "OPERATION_ID",
"targetId": "INSTANCE_ID",
"selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/operations/OPERATION_ID",
"targetProject": "PROJECT_ID"
}
REST v1beta4
ה-method של ה-HTTP וכתובת ה-URL:
PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID
תוכן בקשת JSON:
{
"performanceCaptureConfig": {
"enabled": false
}
}
כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:
אתם אמורים לקבל תגובת JSON שדומה לזו:
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2025-11-10T22:19:33.735Z",
"operationType": "UPDATE",
"name": "OPERATION_ID",
"targetId": "INSTANCE_ID",
"selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/operations/OPERATION_ID",
"targetProject": "PROJECT_ID"
}