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:
-
Wechseln Sie in der Cloud de Confiance Console zur Seite Cloud Logging.
- Klicken Sie auf Alle Ressourcen und wählen Sie dann Cloud SQL-Datenbank aus.
- Wählen Sie Ihre Cloud SQL-Instanz aus.
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.
|
|
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:
|
|
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.
|
|
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.
|
|
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 ZeitstempelstringYYYY-MM-DDTHH:MM:SSZ. Beispiel:2025-10-16T13:12:07ZDateiname 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 istINSTANCE_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 Beispiele2025-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 Beispiele2025-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 Beispiele2025-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