Monitora le query attive

Questa pagina descrive come monitorare e risolvere i problemi relativi alle query attive nel tuo database. Il monitoraggio di queste query può aiutare a identificare le cause della latenza del sistema e dell'utilizzo elevato della CPU.

Nella dashboard di Query Insights, puoi visualizzare un riepilogo delle transazioni attive e un elenco di transazioni con query e statistiche associate. Le transazioni vengono visualizzate in base all'ora di inizio della transazione. Se è in esecuzione un gran numero di query, i risultati potrebbero essere limitati a un sottoinsieme delle query totali.

Prima di iniziare

Crea un ruolo personalizzato e aggiungi le seguenti autorizzazioni. Poi, concedi il ruolo a ogni account utente che deve utilizzare gli approfondimenti delle query.

Tasks Ruoli Autorizzazioni
Visualizza il riepilogo dell'attività del database e le transazioni a lungo termine databaseinsights.viewer databaseinsights.activeQueries.fetch
databaseinsights.activitySummary.fetch
Visualizzare il riepilogo delle attività dell'istanza cloudsql.viewer N/D
Termina sessioni cloudsql.editor
databaseinsights.operationsAdmin
N/D

Abilita le query attive

Per attivare le query attive, segui questi passaggi:

  1. Nella console Google Cloud , vai alla pagina Istanze Cloud SQL.

    Vai a Istanze Cloud SQL

  2. Per aprire la pagina Panoramica di un'istanza, fai clic sul nome dell'istanza.
  3. Nel riquadro Configurazione, fai clic su Modifica configurazione.
  4. Espandi il riquadro Query Insights.
  5. Se la casella di controllo Attiva Query Insights non è selezionata, selezionala. La scheda Query attive è disponibile quando gli Approfondimenti sulle query sono abilitati.
  6. Fai clic su Salva.

Visualizza le query attive

Per visualizzare le query attive:

  1. Aggiungi questo ruolo a ogni utente che visualizza le query attive.

  2. Nella console Google Cloud , vai alla pagina Istanze Cloud SQL.

    Vai a Istanze Cloud SQL

  3. Per aprire la pagina Panoramica di un'istanza, fai clic sul nome dell'istanza.

  4. Per visualizzare la dashboard Approfondimenti sulle query:

    • Seleziona la scheda Approfondimenti sulle query.
    • Fai clic su Vai a Query Insight per informazioni più approfondite su query e prestazioni. Si apre la dashboard Approfondimenti sulle query. Nella parte superiore vengono visualizzati i dettagli dell'istanza.
  5. Fai clic sulla scheda Query attive.

    Da qui puoi modificare le informazioni sulla query visualizzate nella tabella Transazioni in esecuzione più lunghe:

    • Database: filtra il carico delle query su un database specifico o su tutti i database.
    • Utente: filtra il carico delle query da un account utente specifico.

Visualizza le query attive normalizzate

Puoi visualizzare un elenco delle principali transazioni a tempo lungo con query attive normalizzate nella dashboard Approfondimenti sulle query. Una query attiva normalizzata rimuove i dati sensibili e restituisce un digest. Il digest è lo stesso per valori diversi utilizzati nell'esempio seguente:

  • Query regolari

    • select * from test_table where id=1;
    • select * from test_table_where id=2;
  • Digest o query normalizzata

    • select * from test_table where id=?;

Una query eseguita in sessioni diverse viene visualizzata come voci diverse nella dashboard.

Visualizzare le transazioni in esecuzione da più tempo principali

La tabella Transazioni in esecuzione da più tempo nella dashboard Approfondimenti sulle query contiene le seguenti colonne:

Nome colonna Descrizione
ID sessione Identificatore univoco della sessione.
Query Testo della query SQL.
Stato sessione Lo stato della sessione.
Durata della query Per quanto tempo è stata in esecuzione la query.
Tipo di evento di attesa Il tipo di evento di attesa, se la richiesta è bloccata per l'esecuzione della query.
ID sessione di blocco L'ID della sessione che blocca la sessione.
Durata attesa transazione La durata dell'attesa corrente, se la sessione è bloccata.
Righe transazione modificate Numero di righe restituite al client da questa query.
% di completamento Percentuale di lavoro completato, se la query riporta l'avanzamento.
Database Database in cui è in esecuzione la sessione.
Nome applicazione Nome dell'applicazione che ha avviato la sessione.
Utente Nome dell'utente connesso al database.
Indirizzo client L'indirizzo IP specifico del client che ha inviato una query.
Azione Contiene un link per terminare una sessione.

Il display viene aggiornato automaticamente ogni 60 secondi.

Terminare una sessione

Per terminare una query o una transazione, devi disporre del ruolo databaseinsights.operationsAdmin. Per ulteriori informazioni, consulta Documentazione di riferimento dei ruoli di base e predefiniti IAM.

Per terminare una query o una transazione, devono essere attivati anche gli approfondimenti sulle query per la versione Cloud SQL Enterprise Plus.

Le operazioni a lunga esecuzione potrebbero richiedere più tempo per essere completate.

Per terminare una query o una transazione:

  1. Nella tabella Transazioni in esecuzione da più tempo, seleziona una query.
  2. Nella colonna Azione, fai clic su Termina sessione.
  3. Nella finestra Termina sessione, fai clic su Conferma.

Passaggi successivi