Usa gli insight sul sistema per migliorare le prestazioni del sistema

In questa pagina viene descritto come utilizzare la dashboard degli insight sul sistema di Cloud SQL. La dashboard di System Insights mostra le metriche relative alle risorse Istanza utilizza e consente di rilevare e analizzare problemi di prestazioni del sistema.

Visualizza la dashboard di System Insights

Per visualizzare la dashboard di System Insights, segui questi passaggi:

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

    Vai a Istanze Cloud SQL

  2. Fai clic sul nome di un'istanza.
  3. Seleziona la scheda Approfondimenti sul sistema dal pannello di navigazione SQL a sinistra.

Si apre la dashboard degli insight sul sistema.

Immagine della dashboard che mostra la cronologia delle metriche e degli eventi.

La dashboard di System Insights mostra le seguenti informazioni:

  1. Dettagli istanza

  2. Cronologia degli eventi: mostra gli eventi di sistema in ordine cronologico. Queste informazioni consentono di valutare l'impatto degli eventi di sistema sull'integrità e sulle prestazioni dell'istanza.

  3. Schede riepilogative: fornisce una panoramica dell'integrità e delle prestazioni dell'istanza mostrando i dati più recenti e aggregati per le metriche di utilizzo della CPU, utilizzo del disco ed errori di log.

  4. Grafici delle metriche: mostrano i informazioni sulle metriche del sistema operativo e del database per ottenere insight su diversi problemi, come velocità effettiva, latenza e costi aggiuntivi.

La dashboard offre le seguenti opzioni di alto livello:

  • Per visualizzare due grafici affiancati o un solo grafico per riga: Fai clic su Personalizza visualizzazione. Puoi utilizzare questa opzione anche per scegliere le metriche da visualizzare sulla dashboard.
  • Per mantenere aggiornata la dashboard, attiva l'opzione Aggiornamento automatico. Se attivi l'opzione Aggiornamento automatico, i dati della dashboard vengono aggiornati ogni minuto.

  • Il selettore di data mostra l'opzione 1 day selezionata per impostazione predefinita. Per modificare il periodo, seleziona uno degli altri periodi predefiniti oppure fai clic su Personalizzato e definisci un'ora di inizio e di fine. I dati sono disponibili per gli ultimi 30 giorni.

  • Per creare un link assoluto alla dashboard, fai clic sul pulsante Copia link. Puoi condividere questo link con altri utenti di Cloud SQL che dispongono delle stesse autorizzazioni.

Schede riepilogative

La tabella seguente descrive le schede riepilogative visualizzate nella parte superiore della schermata Dashboard degli approfondimenti. Queste schede forniscono una breve panoramica dell'integrità dell'istanza e rendimento durante il periodo di tempo selezionato.

Scheda riepilogativaDescrizione
Utilizzo CPU - P99 | P50 I valori di utilizzo della CPU P99 e P50 nel periodo selezionato.
Connessioni di picco Il rapporto tra le connessioni di picco e le connessioni massime per il periodo selezionato. Il numero di connessioni di picco potrebbe essere superiore al numero massimo nel caso in cui il conteggio massimo è cambiato di recente, ad esempio a causa della scalabilità delle istanze modificando manualmente l'impostazione max_connections.
Utilizzo ID transazione L'ultimo valore di utilizzo dell'ID transazione per il periodo selezionato.
Utilizzo del disco Il valore più recente di utilizzo del disco.
Errori nei log Il numero di errori registrati.

Grafici delle metriche

La scheda del grafico relativa a una metrica di esempio è la seguente.
Grafico che mostra i dati di esempio delle metriche Cloud SQL.

La barra degli strumenti in ogni scheda del grafico offre il seguente insieme di opzioni standard:

  • Per nascondere o visualizzare la legenda, fai clic su .
  • Per visualizzare i valori delle metriche per un momento specifico nel periodo selezionato: sposta il cursore sul grafico.

  • Per visualizzare un grafico in modalità a schermo intero, fai clic su . Per uscire dalla modalità a schermo intero, fai clic su Esc.

  • Per eseguire lo zoom di un grafico, fai clic sul grafico e trascinalo orizzontalmente lungo l'asse X oppure verticalmente lungo l'asse y. Per ripristinare l'operazione di zoom, fai clic su . Le operazioni di zoom vengono applicate contemporaneamente a tutti i grafici in una dashboard.

  • Per visualizzare ulteriori opzioni, fai clic su . La maggior parte dei grafici offre queste opzioni:

    • Scarica un'immagine PNG.

    • Visualizza in Esplora metriche. Visualizza la metrica in Esplora metriche. Puoi visualizzare altre metriche Cloud SQL in Metrics Explorer dopo aver selezionato il tipo di risorsa Database Cloud SQL.

    • Aggiungi alla dashboard personalizzata. Specifica un nome per la dashboard o seleziona un dashboard personalizzata esistente. Visualizza e modifica la dashboard utilizzando Cloud Monitoring.

La seguente tabella descrive le metriche di Cloud SQL che vengono visualizzate per impostazione predefinita Dashboard degli insight sul sistema di Cloud SQL.

Le stringhe del tipo di metrica seguono questo prefisso: cloudsql.googleapis.com/database/.

Fasi di lancio di queste metriche: GA, BETA

Nome e tipo di metricaDescrizione
Nuove connessioni al secondo BETA
postgresql/new_connection_count

La frequenza del numero di nuove connessioni che crei sul tuo Istanza Cloud SQL per PostgreSQL, al secondo. Cloud SQL calcola e visualizza questa metrica per database.

Questa metrica è disponibile per PostgreSQL 14 e versioni successive.

Tipi di eventi di attesa BETA
postgresql/backends_in_wait

Il numero di connessioni per ogni tipo di evento di attesa in un Cloud SQL per PostgreSQL.

Eventi di attesa BETA
postgresql/backends_in_wait

Il numero di eventi di attesa in un'istanza Cloud SQL per PostgreSQL. Nella dashboard viene visualizzata questa metrica come wait event name:wait event type.

Conteggio transazioni BETA
postgresql/transaction_count

Il numero di transazioni in commit e rollback in un'istanza Cloud SQL per PostgreSQL.

Componenti di memoria BETA
memory/components

I componenti di memoria disponibili per il database. Il valore di ogni ricordo viene calcolata come percentuale della memoria totale disponibile per il database.

Ritardo massimo della replica BETA
postgresql/external_sync/max_replica_byte_lag

Il tempo di replica massimo (in byte) tra tutti i database sul come replica del server esterno (ES).

Latenza query GA
postgresql/insights/aggregate/latencies

Distribuzione della latenza aggregata delle query per P99, P95 e P50 per utente e database.

Disponibile solo per le istanze con Query Insights abilitato.

Carico database per database/utente/indirizzo client GA
postgresql/insights/aggregate/execution_time

Il tempo di esecuzione della query accumulato per database, utente o all'indirizzo del client. È la somma di tempo di CPU, tempo di attesa I/O, tempo di attesa blocco il cambio di contesto del processo e la pianificazione di tutti i processi coinvolti nella query dell'esecuzione.

Disponibile solo per le istanze con Query Insights abilitato.

Utilizzo CPU GA
cpu/utilization

L'utilizzo attuale della CPU rappresentato come percentuale del numero di CPU prenotate CPU attualmente in uso.

Spazio di archiviazione su disco per tipo GA
disk/bytes_used_by_data_type

La suddivisione dell'utilizzo del disco dell'istanza per tipi di dati, tra cui data, binlog e tmp_data.

Questa metrica ti consente di comprendere i costi di archiviazione. Per ulteriori informazioni per l'utilizzo dello spazio di archiviazione, vedi Prezzi di archiviazione e networking.

Recupero point-in-time (PITR) utilizza l'archiviazione write-ahead log (WAL). I log vengono aggiornati regolarmente e utilizzano di archiviazione. I log write-ahead vengono eliminati con il backup automatico associato, cosa che accade in genere dopo circa 7 giorni.

Se le dimensioni dei log write-ahead causano un problema per dell'istanza, puoi aumentare la dimensione dello spazio di archiviazione, ma il log write-ahead dell'utilizzo del disco potrebbe essere temporaneo. Per evitare uno spazio di archiviazione imprevisto problemi, Google consiglia di attivare gli aumenti automatici dello spazio di archiviazione quando utilizzi PITR.

Per eliminare i log e ripristinare lo spazio di archiviazione, puoi disabilitare il recupero point-in-time. Tuttavia, tieni presente la riduzione dello spazio di archiviazione utilizzato non riduce le dimensioni dello spazio di archiviazione di cui è stato eseguito il provisioning per l'istanza.

I dati temporanei sono inclusi nella metrica di utilizzo dello spazio di archiviazione. I dati temporanei vengono rimossi nell'ambito della manutenzione e può estendersi oltre i limiti definiti dall'utente limiti di capacità per evitare un evento di esaurimento del disco, senza costi per l'utente.

Un database appena creato utilizza circa 100 MB per tabelle e file di sistema.

Spazio di archiviazione su disco per tipo GA
disk/bytes_used_by_data_type

La suddivisione dell'utilizzo del disco dell'istanza per tipi di dati, tra cui data, binlog e tmp_data.

Questa metrica ti consente di comprendere i costi di archiviazione. Per ulteriori informazioni per l'utilizzo dello spazio di archiviazione, vedi Prezzi di archiviazione e networking.

Recupero point-in-time utilizza l'archiviazione write-ahead logging (WAL). Per il nuovo Cloud SQL per le istanze con recupero point-in-time abilitato o per le istanze esistenti che abilita il recupero point-in-time quando questa funzionalità per l'archiviazione dei log WAL in Cloud Storage è disponibile; i log non saranno più essere archiviati su disco, verranno invece archiviate in Cloud Storage nella stessa regione delle istanze.

Per vedere se un I log dell'istanza sono archiviati in Cloud Storage. Controlla la metrica bytes_used_by_data_type per l'istanza. Se per il tipo di dati archived_wal_log è 0, il valore e i log dell'istanza sono archiviati in Cloud Storage.

Tutte le altre istanze esistenti in cui è abilitato il recupero point-in-time a conservare i log su disco. La modifica relativa all'archiviazione dei log Cloud Storage verrà reso disponibile in un secondo momento.

I log write-ahead utilizzati nel recupero point-in-time vengono eliminati automaticamente con i relativi log backup automatico, che di solito si verifica dopo il valore impostato per transactionLogRetentionDays viene rispettata. Il numero di giorni in cui vengono registrati i log delle transazioni che Cloud SQL conserva per il recupero point-in-time, da 1 a 7.

Per le istanze che hanno log write-ahead archiviati in Cloud Storage, mentre i log sono archiviati nella stessa regione dell'istanza principale. Questo spazio di archiviazione dei log (fino a sette giorni, la durata massima per il recupero point-in-time) non genera costi aggiuntivi per istanza.

Se per l'istanza è abilitato il recupero point-in-time e la dimensione dei log write-ahead sul disco sta causando un problema per l'istanza, quindi disabilita il recupero point-in-time e abilitalo di nuovo assicurati che i nuovi log siano archiviati in Cloud Storage nella stessa regione del in esecuzione in un'istanza Compute Engine. Questa operazione elimina i log write-ahead esistenti, quindi non puoi eseguire ripristino point-in-time precedente all'ora di riattivazione recupero point-in-time. Tuttavia, anche se i log esistenti vengono eliminati, la dimensione del disco rimane la stessa.

Per evitare problemi di archiviazione imprevisti, l'attivazione degli aumenti automatici dello spazio di archiviazione per tutte le istanze quando utilizzi il recupero point-in-time. Questo consiglio si applica solo se le tue con il recupero point-in-time abilitato e i log vengono archiviati su disco.

Per eliminare i log e ripristinare lo spazio di archiviazione, puoi disabilitare il recupero point-in-time. Tuttavia, tieni presente la riduzione dei log write-ahead utilizzati non riduce le dimensioni del disco di cui è stato eseguito il provisioning per l'istanza.

I dati temporanei sono inclusi nella metrica di utilizzo dello spazio di archiviazione. I dati temporanei vengono rimossi nell'ambito della manutenzione e può estendersi oltre i limiti definiti dall'utente limiti di capacità per evitare un evento di esaurimento del disco, senza costi per l'utente.

Un database appena creato utilizza circa 100 MB per tabelle e file di sistema.

Operazioni di lettura/scrittura su disco GA
disk/read_ops_count disk/write_ops_count

La metrica Numero di letture indica il numero di operazioni di lettura forniti da un disco che non provengono dalla cache. Puoi utilizzare questa metrica per per capire se l'istanza è dimensionata correttamente per il tuo ambiente. Se necessario, puoi passare a un tipo di macchina più grande per pubblicare più dalla cache per ridurre la latenza.

La metrica Numero di scritture indica il numero di operazioni di scrittura su disco. L'attività di scrittura viene generata anche se l'applicazione non è attiva poiché le istanze Cloud SQL, tranne le repliche, scrivono in un sistema ogni secondo circa.

Connessioni per stato GA
postgresql/num_backends_by_state

Il numero di connessioni raggruppate in base a questi stati: idle, active, idle_in_transaction idle_in_transaction_aborted, disabled e fastpath_function_call.

Per informazioni su questi stati, vedi la riga state text in pg_stat_activity.

Connessioni per database GA
postgresql/num_backends

Il numero di connessioni mantenute dall'istanza di database.

Byte in entrata/in uscita GA
network/received_bytes_count network/sent_bytes_count

Il traffico di rete in termini di numero di byte in entrata (byte ricevuti) e byte in uscita (byte inviati) rispettivamente da e verso l'istanza.

Suddivisione attesa di I/O per tipo GA
postgresql/insights/aggregate/io_time

La suddivisione del tempo di attesa I/O per le istruzioni SQL in base ai tipi di lettura e scrittura.

Disponibile solo per le istanze con Query Insights abilitato.

Conteggio deadlock per database GA
postgresql/deadlock_count

Il numero di deadlock per database.

Conteggio blocchi lettura GA
postgresql/blocks_read_count

Il numero di blocchi letti al secondo dal disco e dalla cache del buffer.

Righe elaborate dall'operazione GA
postgresql/tuples_processed_count

Il numero di righe elaborate per operazione al secondo.

Righe nel database per stato GA
postgresql/tuple_size

Il numero di righe per ogni stato del database. Cloud SQL registra questa metrica se il numero di database nell'istanza è inferiore a 50.

Transazione meno recente in base all'età GA
postgresql/vacuum/oldest_transaction_age

L'età della transazione meno recente che blocca l'operazione vacuum.

Archiviazione WAL GA
replication/log_archive_success_count replication/log_archive_failure_count

Il numero di file di log write-ahead archiviati correttamente o non archiviati al minuto.

Utilizzo ID transazione GA
postgresql/transaction_id_utilization

La percentuale di ID transazione utilizzati nell'istanza.

Conteggio connessioni per nome applicazione GA
postgresql/num_backends_by_application

Il numero di connessioni all'istanza Cloud SQL, raggruppate per applicazioni.

Le connessioni senza un nome applicazione vengono raggruppate come Unknown.

Righe recuperate, righe restituite e righe scritte
  • Righe recuperate GA: postgresql/tuples_fetched_count
  • Le righe hanno restituito GA: postgresql/tuples_returned_count
  • Righe scritte GA: postgresql/tuples_processed_count
  • Righe recuperate indica il numero di righe recuperate dalle query nell'istanza.
  • Righe restituite indica il numero di righe analizzate durante l'elaborazione delle query nell'istanza.
  • Righe scritte indica il numero di righe scritte nell'istanza durante l'esecuzione delle operazioni di inserimento, aggiornamento ed eliminazione.

Se la differenza tra le righe restituite e le righe recuperate è talmente elevata che i relativi valori non vengono mostrati nella stessa scala, il valore delle righe recuperate è pari a 0 perché è trascurabile rispetto al valore delle righe restituite.

Dimensione dei dati temporanei GA
postgresql/temp_bytes_written_count

La quantità totale di dati (in byte) utilizzati per l'esecuzione delle query e degli algoritmi come join e ordinamento.

File temporanei GA
postgresql/temp_files_written_count

Il numero di file temporanei utilizzati per l'esecuzione delle query e degli algoritmi come join e ordinamento.

Inoltre, la metrica Cloud Logging, Voci di log per gravità (logging.googleapis.com/log_entry_count), mostra il numero totale di voci di log di errori e avvisi.

Questi vengono estratti da postgres.log, che è il log del database, e pgaudit.log, che contiene informazioni sull'accesso ai dati.

Per saperne di più, consulta Metriche di Cloud SQL.

Cronologia degli eventi

La dashboard fornisce i dettagli dei seguenti eventi:

Nome eventoDescrizioneTipo di operazione
Instance restart Riavvia l'istanza Cloud SQL RESTART
Instance failover Avvia un failover manuale di un'istanza principale ad alta disponibilità (HA) in un'istanza in standby, che diventa l'istanza principale. FAILOVER
Instance maintenance Indica che l'istanza è attualmente in manutenzione. In genere, a causa della manutenzione, l'istanza non è disponibile per 1-3 minuti. MAINTENANCE
Instance backup Esegue un backup dell'istanza. BACKUP_VOLUME
Instance update Aggiorna le impostazioni di un'istanza Cloud SQL. UPDATE
Promote replica Promuove un'istanza di replica Cloud SQL. PROMOTE_REPLICA
Start replica Avvia la replica su un'istanza di replica di lettura Cloud SQL. START_REPLICA
Stop replica Arresta la replica su un'istanza di replica di lettura di Cloud SQL. STOP_REPLICA
Recreate replica Ricrea le risorse per un'istanza di replica Cloud SQL. RECREATE_REPLICA
Create replica Crea un'istanza di replica Cloud SQL. CREATE_REPLICA
Data import Importa i dati in un'istanza Cloud SQL. IMPORT
Instance export Esporta i dati da un'istanza Cloud SQL in un bucket Cloud Storage. EXPORT
Restore backup Ripristina un backup di un'istanza Cloud SQL. Questa operazione potrebbe o causare il riavvio dell'istanza. RESTORE_VOLUME

Passaggi successivi