הלכידה של נתוני הביצועים מאפשרת לכם לאבחן בעיות זמניות במסד הנתונים. כדי לעשות זאת, המערכת לוכדת מדדים מפורטים של המופע כשהביצועים ירודים. כדי להשתמש בתיעוד הביצועים, צריך להפעיל אותו במופע ולהגדיר את ערכי הסף שמפעילים את הצילומים המפורטים של המופע ב-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"
}