Logs zur Leistungserfassung ansehen

Bei der Leistungserfassung werden Instanzmesswertdaten erfasst und in der Datei mysql-performance-capture.log an Cloud Logging gesendet.

Weitere Informationen zum Ansehen von Logs in Cloud Logging finden Sie unter Logs mit dem Log-Explorer ansehen.

Hinweise

Damit Sie Logs zur Leistungserfassung ansehen können, benötigen Sie die entsprechenden Berechtigungen zum Anzeigen von Logs in Cloud Logging für Ihr Projekt und Ihre Instanz.

Erforderliche Rollen und Berechtigungen

Bitten Sie Ihren Administrator, Ihnen die IAM-Rolle Logs Viewer (roles/logging.viewer) für das Projekt der Instanz zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Aufrufen von Logs zur Leistungserfassung benötigen. Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.

Sie können die erforderlichen Berechtigungen auch über benutzerdefinierte Rollen oder andere vordefinierte Rollen erhalten.

Logs zur Leistungserfassung ansehen

So rufen Sie Logs für die Leistungserfassung auf:

  1. Wechseln Sie in der Cloud de Confiance Console zur Seite Cloud Logging.

    Zu Cloud Logging

  2. Klicken Sie auf Alle Ressourcen und wählen Sie dann Cloud SQL-Datenbank aus.
  3. Wählen Sie Ihre Cloud SQL-Instanz aus.
  4. Filtern Sie nach dem Logname:

    logName="projects/PROJECT_ID/logs/cloudsql.googleapis.com%2Fmysql-performance-capture.log"

    Ersetzen Sie PROJECT_ID durch Ihre Projekt-ID.

    Die Log-Nutzlast hat das String-Format und enthält die Ausgabe von erfassten Befehlen wie SHOW ENGINE INNODB STATUS, die sich über mehrere Logzeilen erstrecken.

Daten in einem Log für die Leistungserfassung ansehen

Jedes Leistungserfassungslog wird durch ein Leistungsereignis ausgelöst, das Sie für Ihre Instanz definiert haben. In der folgenden Tabelle werden Logeinträge zur Leistungserfassung mit den konfigurierten Grenzwerten in Beziehung gesetzt. Außerdem wird der Leistungsdatenbericht beschrieben, den Sie im Eintragslog aufrufen können.

Logeintrag für die Leistungserfassung Beschreibung Schwellenwertauslöser Berichtsname
Aktive Abfragen Erfasst Messwerte zur Datenbanklast, einschließlich der Anzahl von Verbindungen und Transaktionen, gruppiert nach Status, der Anzahl aktiver Abfragen, gruppiert nach Laufzeit (<2 Sekunden, 2 bis 10 Sekunden, ≥10 Sekunden), und detaillierte Informationen zu den 50 Transaktionen oder Abfragen mit der längsten Laufzeit. Mit diesem Bericht lassen sich Zeiträume mit hoher Last und bestimmte langsame Abfragen ermitteln.

Weitere Informationen zum Interpretieren von Daten zu InnoDB-Transaktionen und -Prozessen finden Sie in der MySQL-Dokumentation unter Die INFORMATION_SCHEMA INNODB_TRX-Tabelle und Die processlist-Tabelle.
  • runningThreadsThreshold (Cloud SQL Admin API)
  • running-threads-threshold (gcloud-CLI)
activequeries
InnoDB-Status Enthält Informationen zum Status des InnoDB-Speichermoduls zum Zeitpunkt des Leistungsereignisses. Dies ist entscheidend für die Diagnose von Sperrinhalten, Transaktionsproblemen, Pufferpoolproblemen und dem Wachstum der History List Length. Keywords, nach denen Sie suchen sollten:
  • TRANSACTIONS (lang andauernde Transaktionen, Warten auf Sperren)
  • SEMAPHORES (Mutex-Konflikt)
  • LATEST DETECTED DEADLOCK
  • BUFFER POOL AND MEMORY
  • HISTORY LIST LENGTH
Weitere Informationen zur Ausgabe des InnoDB-Standardmonitorings finden Sie in der MySQL-Dokumentation unter Ausgaben des Standardmonitorings und Sperrungsmonitorings von InnoDB.
  • runningThreadsThreshold (Cloud SQL Admin API)
  • running-threads-threshold (gcloud-CLI)
innodbstatus
Replikationsanalyse Enthält Diagnosedaten zur Replikation, einschließlich der Ausgabe von SHOW REPLICA STATUS, GTID-Sets und Details aus Performance Schema-Tools. Der Bericht enthält auch die ersten fünf Ereignisse aus dem Relay-Log nach der Ausführungsposition zum Zeitpunkt des Leistungsereignisses. Mit diesem Bericht lassen sich Replikationsfehler oder ‑verzögerungen diagnostizieren.

Weitere Informationen zur SHOW REPLICA STATUS-Ausgabe und zu Replikatanwendungs-Threads finden Sie in der MySQL-Dokumentation unter SHOW REPLICA STATUS Statement und Monitoring Replication Applier Worker Threads.
  • secondsBehindSourceThreshold (Cloud SQL Admin API)
  • seconds-behind-source-threshold (gcloud-CLI)
replicastatus
Daten zur Transaktionsüberwachung Details zu den lang andauernden Transaktionen, die erfasst werden.

Weitere Informationen zum Interpretieren von Daten zu InnoDB-Transaktionen finden Sie in der MySQL-Dokumentation unter Die Tabelle INFORMATION_SCHEMA INNODB_TRX.
  • transactionDurationThreshold (Cloud SQL Admin API)
  • transaction-duration-threshold (gcloud-CLI)
LongRunningTransactions

Daten in einem Leistungserfassungsprotokoll filtern

Wenn bei der Leistungserfassung ein Problem basierend auf einem für Ihre Cloud SQL-Instanz konfigurierten Schwellenwert erkannt wird, sendet der Monitoring-Agent gelabelte Logeinträge, die der Instanz und dem Berichtstyp zugeordnet sind, an Cloud Logging.

Um Ihnen das Sortieren von Logs und das Korrelieren von Logeinträgen mit den für Ihre Instanz beobachteten Leistungsproblemen zu erleichtern, können Sie die Logeinträge für die Leistungserfassung nach Label filtern.

Jeder Logeintrag ist mit den folgenden beiden Labels versehen:

  • Zeit des Ereignisses oder labels.EVENT_TIME: Gibt die Zeit des Leistungserfassungs-Logeintrags an. Das Format ist ein eindeutiger Zeitstempelstring YYYY-MM-DDTHH:MM:SSZ. Beispiel: 2025-10-16T13:12:07Z

  • Dateiname oder labels.FILE_NAME: Gibt den Typ des Berichts und die Sequenznummer des durch ein Leistungsereignis ausgelösten Leistungserfassungs-Logeintrags an. Das Format dafür ist INSTANCE_TYPE_SEQUENCE_NUMBER_REPORT_TYPE. Beispiel: primary_1_activequeries, der erste Logeintrag für die Leistungserfassung eines Berichts zu aktiven Abfragen.

Beispielfilter

In diesem Abschnitt finden Sie Beispiele dafür, wie Sie die mysql-performance-capture.log-Datei nach bestimmten Logeinträgen filtern können, um sie zu analysieren.

Ersetzen Sie in den folgenden Beispielen Folgendes:

  • PROJECT_ID: Projekt-ID der Cloud SQL-Instanz
  • TIMESTAMP: Zeitstempel des auslösenden Leistungsereignisses im Format YYYY-MM-DDTHH:MM:SSZ. Zum Beispiele 2025-10-16T13:12:07Z

Nach einem bestimmten Leistungsereignis filtern

Wenn Sie nach einem bestimmten Leistungsereignis filtern möchten, verwenden Sie das Label labels.EVENT_TIME, um zugehörige Logeinträge zu finden.

Wenn Sie beispielsweise Berichte für ein bestimmtes Leistungsereignis abrufen möchten, verwenden Sie die folgenden Abfragen im Query Builder des Log-Explorers von Cloud Logging.

Alle Berichte für ein bestimmtes Ereignis abrufen

logName="projects/PROJECT_ID/logs/cloudsql.googleapis.com%2Fmysql-performance-capture.log"
labels.EVENT_TIME="TIMESTAMP"

InnoDB-Bericht für ein bestimmtes Ereignis abrufen

logName="projects/PROJECT_ID/logs/cloudsql.googleapis.com%2Fmysql-performance-capture.log"
labels.EVENT_TIME="TIMESTAMP"
labels.FILE_NAME=~"innodbstatus"

Nur den ersten Logeintrag für alle Berichtstypen für ein bestimmtes Ereignis abrufen

logName="projects/PROJECT_ID/logs/cloudsql.googleapis.com%2Fmysql-performance-capture.log"
labels.EVENT_TIME="TIMESTAMP"
labels.FILE_NAME=~"_1_"

Über Dateinamen hinweg filtern

Alle activequeries-Berichte für alle Ereignisse abrufen

Diese allgemeine Abfrage ist nützlich, um zu sehen, wie aktive Abfragen während eines Leistungsereignisses aussehen.

logName="projects/PROJECT_ID/logs/cloudsql.googleapis.com%2Fmysql-performance-capture.log"
labels.FILE_NAME=~"activequeries"

Ersetzen Sie Folgendes:

  • PROJECT_ID: Projekt-ID der Cloud SQL-Instanz

Vergleichen Sie den ersten und dritten innodbstatus-Bericht für ein bestimmtes Ereignis.

logName="projects/PROJECT_ID/logs/cloudsql.googleapis.com%2Fmysql-performance-capture.log"
labels.EVENT_TIME="TIMESTAMP"
(labels.FILE_NAME="primary_1_innodbstatus" OR labels.FILE_NAME="primary_3_innodbstatus")

Ersetzen Sie Folgendes:

  • PROJECT_ID: Projekt-ID der Cloud SQL-Instanz
  • TIMESTAMP: Zeitstempel des auslösenden Leistungsereignisses im Format YYYY-MM-DDTHH:MM:SSZ. Zum Beispiele 2025-10-16T13:12:07Z

Ersten activequeries-Bericht für ein Ereignis finden, das nach einem bestimmten Zeitpunkt aufgetreten ist

logName="projects/PROJECT_ID/logs/cloudsql.googleapis.com%2Fmysql-performance-capture.log"
labels.FILE_NAME="primary_1_activequeries"
timestamp > "TIMESTAMP"

Ersetzen Sie Folgendes:

  • PROJECT_ID: Projekt-ID der Cloud SQL-Instanz
  • TIMESTAMP: Zeitstempel im Format YYYY-MM-DDTHH:MM:SSZ. Zum Beispiele 2025-10-16T13:12:07Z

In einem beliebigen InnoDB-Statusbericht nach einem bestimmten Text suchen

logName="projects/PROJECT_ID/logs/cloudsql.googleapis.com%2Fmysql-performance-capture.log"
labels.FILE_NAME=~"innodbstatus"
textPayload:"SEARCH_TEXT"

Ersetzen Sie Folgendes:

  • PROJECT_ID: Projekt-ID der Cloud SQL-Instanz
  • SEARCH_TEXT: Der Text, nach dem Sie suchen möchten. Beispiel: SEMAPHORE WAITS