Utilizzare gli Approfondimenti di 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 Approfondimenti sul sistema mostra le metriche relative alle risorse utilizzate dall'istanza e ti aiuta a rilevare e analizzare i problemi di prestazioni del sistema.

Puoi utilizzare l'assistenza di Gemini in Databases per osservare e risolvere i problemi del tuo di Cloud SQL per PostgreSQL. Per ulteriori informazioni, vedi Osserva e risolvi i problemi con l'assistenza di Gemini.

Visualizza la dashboard di System Insights

Per visualizzare la dashboard Approfondimenti sistema:

  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 nel riquadro di navigazione SQL a sinistra.

Si apre la dashboard Approfondimenti di sistema.

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

La dashboard Approfondimenti di sistema mostra le seguenti informazioni:

  1. Dettagli istanza

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

  3. Schede riepilogative: forniscono una panoramica dell'integrità e del rendimento dell'istanza mostrando i valori più recenti e aggregati per le metriche relative all'utilizzo della CPU, all'utilizzo del disco e agli errori di log.

  4. Grafici delle metriche: mostrano le informazioni sulle metriche del sistema operativo e del database che ti aiutano a comprendere diversi problemi, come velocità effettiva, latenza e costi.

La dashboard offre le seguenti opzioni di alto livello:

  • Per visualizzare due grafici affiancati o un solo grafico per riga, fai clic su Personalizza vista. 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.

  • Per impostazione predefinita, il selettore dell'ora mostra 1 day. 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 dashboard Approfondimenti sul sistema. Queste schede forniscono una breve panoramica dell'integrità e del rendimento dell'istanza durante il periodo di tempo scelto.

Scheda riepilogativaDescrizione
Utilizzo CPU - P99 | P50 I valori di utilizzo della CPU P99 e P50 nel periodo selezionato.
Picco di connessioni 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 è stato modificato 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

Una scheda del grafico per una metrica di esempio è visualizzata come segue.
Grafico che mostra dati metrici di Cloud SQL di esempio.

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, muovi il cursore sopra il 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 aumentare lo zoom di un grafico, fai clic sul grafico e trascina orizzontalmente lungo l'asse x o verticalmente lungo l'asse y. Per annullare 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 di 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'istanza 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. La dashboard mostra questa metrica come nome evento di attesa:tipo evento di attesa.

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 ritardo di replica massimo (in byte) tra tutti i database sulla replica del server esterno.

Latenza query GA
postgresql/insights/aggregate/latencies

La distribuzione della latenza aggregata delle query in base a 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, commutazioni di contesto del processo e pianificazione per tutti i processi coinvolti nell'esecuzione della query.

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 aiuta a comprendere i costi di archiviazione. Per ulteriori informazioni sulle tariffe per l'utilizzo dello spazio di archiviazione, consulta Prezzi di archiviazione e networking.

Recupero point-in-time (PITR) utilizza l'archiviazione WAL (Write-ahead Log). 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 di scrittura anticipata causano un problema per la tua istanza, puoi aumentare le dimensioni dello spazio di archiviazione, ma l'aumento delle dimensioni dei log di scrittura anticipata nell'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. Tieni però presente che 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 ed è consentito che aumentino oltre i limiti di capacità definiti dall'utente per evitare un evento di disco pieno, senza costi per l'utente.

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

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 aiuta a comprendere i costi di archiviazione. Per ulteriori informazioni sulle tariffe per l'utilizzo dello spazio di archiviazione, consulta Prezzi di archiviazione e networking.

Il recupero point-in-time utilizza l'archiviazione dei log write-ahead (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 sapere se i log di un'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.

Tutti gli altri log esistenti per le istanze in cui è abilitato il recupero in un determinato momento continuano a essere archiviati su disco. La modifica relativa all'archiviazione dei log in Cloud Storage sarà resa 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 con log di scrittura anticipata archiviati in Cloud Storage, i log vengono archiviati nella stessa regione dell'istanza principale. Questo spazio di archiviazione dei log (fino a sette giorni, la durata massima per il recupero in un determinato momento) 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. Vengono eliminati i log write-ahead esistenti, pertanto non puoi eseguire un ripristino point-in-time precedente al momento in cui hai riattivato il recupero point-in-time. Tuttavia, anche se i log esistenti vengono eliminati, le dimensioni del disco rimangono invariate.

Per evitare problemi di archiviazione imprevisti, ti consigliamo di attivare gli aumenti automatici dello spazio di archiviazione per tutte le istanze quando utilizzi il recupero in un determinato momento. 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 gestite da disco che non provengono dalla cache. Puoi utilizzare questa metrica per capire se le dimensioni dell'istanza sono corrette 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 perché le istanze Cloud SQL, a parte le repliche, scrivono in una tabella di sistema circa ogni secondo.

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, consulta la riga state text nella documentazione di 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 IO 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 di applicazione vengono raggruppate come Unknown.

Righe recuperate, righe restituite e righe scritte
  • Righe recuperate GA: postgresql/tuples_fetched_count
  • Righe restituite da 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 di operazioni di inserimento, aggiornamento ed eliminazione.

Se la differenza tra le righe restituite e le righe recuperate è così grande che i relativi valori non vengono visualizzati nella stessa scala, il valore delle righe recuperate viene visualizzato come 0 perché è trascurabile rispetto al valore delle righe restituite.

Dimensione 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 di query e algoritmi come join e ordinamento.

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

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

Per ulteriori informazioni, consulta le metriche 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) a 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 Interrompe la replica su un'istanza di replica di lettura 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