Monitorare le metriche in Database di Azure per PostgreSQL - Server flessibile
SI APPLICA A: Database di Azure per PostgreSQL - Server flessibile
Il monitoraggio dei dati relativi ai server facilita la risoluzione dei problemi e l'ottimizzazione in relazione al carico di lavoro. Database di Azure per PostgreSQL server flessibile offre diverse opzioni di monitoraggio per fornire informazioni dettagliate sulle prestazioni del server.
Metriche
Database di Azure per PostgreSQL server flessibile fornisce varie metriche che forniscono informazioni dettagliate sul comportamento delle risorse che supportano l'istanza del server flessibile Database di Azure per PostgreSQL. Ogni metrica viene generata a intervalli di 1 minuto e ha fino a 93 giorni di cronologia. È possibile configurare avvisi in base alle metriche. Altre opzioni includono la configurazione di azioni automatizzate, l'esecuzione di analisi avanzate e l'archiviazione della cronologia. Per altre informazioni, vedere Panoramica delle metriche in Microsoft Azure.
Nota
Mentre le metriche vengono archiviate per 93 giorni, è possibile eseguire query solo (nel riquadro Metriche) per un massimo di 30 giorni di dati in un singolo grafico. Se viene visualizzato un grafico vuoto o il grafico visualizza solo parte dei dati delle metriche, verificare che la differenza tra le date di inizio e di fine nella selezione ora non superi l'intervallo di 30 giorni. Dopo aver selezionato un intervallo di 30 giorni, è possibile visualizzare una panoramica della finestra di conservazione completa.
Metriche predefinite
Per un'istanza del server flessibile Database di Azure per PostgreSQL sono disponibili le metriche seguenti:
Nome visualizzato | ID metrica | Unità | Descrizione | Impostazione predefinita abilitata |
---|---|---|---|---|
Connessioni attive | active_connections |
Conteggio | Numero totale di connessioni al server di database, inclusi tutti gli stati di connessione, ad esempio attivo, inattiva e altri, come illustrato nella pg_stat_activity visualizzazione. Questa figura rappresenta la somma complessiva delle connessioni tra tutti gli stati, senza distinguere tra stati specifici. Per un'analisi approfondita di uno stato specifico, ad esempio connessioni attive, fare riferimento alla metrica "Sessioni per stato". |
Sì |
Backup Archiviazione usato | backup_storage_used |
Byte | Quantità di spazio di archiviazione di backup usato. Questa metrica rappresenta la somma dello spazio di archiviazione utilizzato da tutti i backup completi, i backup differenziali e i backup del log conservati in base al periodo di conservazione dei backup impostato per il server. La frequenza dei backup è gestita dal servizio. Per l'archiviazione con ridondanza geografica, l'utilizzo dell'archiviazione di backup è il doppio dell'utilizzo per l'archiviazione con ridondanza locale. | Sì |
Connessione non riuscite | connections_failed |
Conteggio | Numero di connessioni non riuscite. | Sì |
Connessione riuscite | connections_succeeded |
Conteggio | Numero di connessioni riuscite. | Sì |
Crediti CPU utilizzati | cpu_credits_consumed |
Conteggio | Numero di crediti utilizzati dal server flessibile. Si applica al livello burstable. | Sì |
Crediti CPU rimanenti | cpu_credits_remaining |
Conteggio | Numero di crediti disponibili per il burst. Si applica al livello burstable. | Sì |
Percentuale CPU | cpu_percent |
Percentuale | Percentuale di CPU in uso. | Sì |
Dimensioni database (anteprima) | database_size_bytes |
Byte | Dimensioni del database in byte. | Sì |
Profondità coda disco | disk_queue_depth |
Conteggio | Numero di operazioni di I/O in sospeso sul disco dati. | Sì |
IOPS | iops |
Conteggio | Numero di operazioni di I/O su disco al secondo. | Sì |
NUMERO massimo di ID transazione usati | maximum_used_transactionIDs |
Conteggio | Numero massimo di ID transazione in uso. | Sì |
Percentuale di memoria | memory_percent |
Percentuale | Percentuale di memoria in uso. | Sì |
Rete in uscita | network_bytes_egress |
Byte | Quantità di traffico di rete in uscita. | Sì |
Rete in | network_bytes_ingress |
Byte | Quantità di traffico di rete in ingresso. | Sì |
Operazioni di I/O al secondo di lettura | read_iops |
Conteggio | Numero di operazioni di lettura di I/O su disco dati al secondo. | Sì |
Velocità effettiva lettura | read_throughput |
Byte | Byte letti al secondo dal disco. | Sì |
Archiviazione gratuito | storage_free |
Byte | Quantità di spazio di archiviazione disponibile. | Sì |
percentuale Archiviazione | storage_percent |
Percentuale | Percentuale di spazio di archiviazione usato. L'archiviazione usata dal servizio può includere file di database, log delle transazioni e log del server. | Sì |
Archiviazione utilizzato | storage_used |
Byte | Quantità di spazio di archiviazione usato. L'archiviazione usata dal servizio può includere i file di database, i log delle transazioni e i log del server. | Sì |
Log delle transazioni Archiviazione utilizzato | txlogs_storage_used |
Byte | Quantità di spazio di archiviazione usato dai log delle transazioni. | Sì |
Velocità effettiva scrittura | write_throughput |
Byte | Byte scritti su disco al secondo. | Sì |
Operazioni di I/O al secondo di scrittura | write_iops |
Conteggio | Numero di operazioni di scrittura di I/O su disco dati al secondo. | Sì |
Metriche avanzate
È possibile usare metriche avanzate per Database di Azure per PostgreSQL server flessibile per ottenere il monitoraggio e gli avvisi con granularità fine sui database. È possibile configurare avvisi in base alle metriche. Alcune metriche avanzate includono un Dimension
parametro che è possibile usare per suddividere e filtrare i dati delle metriche usando una dimensione come il nome o lo stato del database.
Abilitazione delle metriche avanzate
- La maggior parte di queste nuove metriche è disabilitata per impostazione predefinita. Esistono tuttavia alcune eccezioni, che sono abilitate per impostazione predefinita. La colonna più a destra nelle tabelle seguenti indica se ogni metrica è abilitata per impostazione predefinita o meno.
- Per abilitare le metriche che non sono abilitate per impostazione predefinita, impostare il parametro
metrics.collector_database_activity
del server suON
. Questo parametro è dinamico e non richiede un riavvio dell'istanza.
Elenco delle metriche avanzate
È possibile scegliere tra le categorie seguenti di metriche avanzate:
- Impegno
- Database
- Replica logica
- Replica
- Saturazione
- Traffico
Impegno
Nome visualizzato | ID metrica | Unità | Descrizione | Dimensione | Impostazione predefinita abilitata |
---|---|---|---|---|---|
Sessioni per stato | sessions_by_state |
Conteggio | Sessioni in base allo stato, come illustrato nella pg_stat_activity visualizzazione. Classifica i back-end client in vari stati, ad esempio attivo o inattiva. |
Provincia | No |
Sessions By WaitEventType | sessions_by_wait_event_type |
Conteggio | Sessioni in base al tipo di evento per il quale il back-end client è in attesa. | Tipo di evento Wait | No |
Back-end meno recente | oldest_backend_time_sec |
Secondi | Età in secondi del back-end meno recente (indipendentemente dallo stato). | Non applicabile | No |
Query meno recente | longest_query_time_sec |
Secondi | Età in secondi della query più lunga attualmente in esecuzione. | Non applicabile | No |
Transazione meno recente | longest_transaction_time_sec |
Secondi | Validità in secondi della transazione più lunga (incluse le transazioni inattive). | Non applicabile | No |
Xmin meno recente | oldest_backend_xmin |
Conteggio | Valore effettivo dell'oggetto meno recente xmin . Se xmin non aumenta, indica che sono presenti alcune transazioni a esecuzione prolungata che potrebbero impedire la rimozione di tuple non attive. |
Non applicabile | No |
Età xmin più antica | oldest_backend_xmin_age |
Conteggio | Età in unità del più antico xmin . Indica il numero di transazioni passate dal meno recente xmin . |
Non applicabile | No |
Database
Nome visualizzato | ID metrica | Unità | Descrizione | Dimensione | Impostazione predefinita abilitata |
---|---|---|---|---|---|
Backend | numbackends |
Conteggio | Numero di back-end connessi al database. | DatabaseName | No |
Deadlock | deadlocks |
Conteggio | Numero di deadlock rilevati nel database. | DatabaseName | No |
Hit dei blocchi del disco | blks_hit |
Conteggio | Numero di volte in cui i blocchi del disco sono già stati trovati nella cache del buffer, in modo che una lettura non fosse necessaria. | DatabaseName | No |
Lettura blocchi disco | blks_read |
Conteggio | Numero di blocchi di disco letti in questo database. | DatabaseName | No |
File temporanei | temp_files |
Conteggio | Numero di file temporanei creati dalle query in questo database. | DatabaseName | No |
Dimensioni file temporanei | temp_bytes |
Byte | Quantità totale di dati scritti in file temporanei da query in questo database. | DatabaseName | No |
Totale transazioni | xact_total |
Conteggio | Numero di transazioni totali eseguite nel database. | DatabaseName | No |
Transazioni di cui è stato eseguito il | xact_commit |
Conteggio | Numero di transazioni in questo database di cui è stato eseguito il commit. | DatabaseName | No |
Transazioni al secondo (anteprima) | tps |
Conteggio | Numero di transazioni eseguite entro un secondo. | DatabaseName | No |
Rollback delle transazioni | xact_rollback |
Conteggio | Numero di transazioni nel database di cui è stato eseguito il rollback. | DatabaseName | No |
Tuple eliminate | tup_deleted |
Conteggio | Numero di righe eliminate dalle query in questo database. | DatabaseName | No |
Tuple recuperate | tup_fetched |
Conteggio | Numero di righe recuperate dalle query in questo database. | DatabaseName | No |
Tuple inserite | tup_inserted |
Conteggio | Numero di righe inserite dalle query in questo database. | DatabaseName | No |
Tuple restituite | tup_returned |
Conteggio | Numero di righe restituite dalle query in questo database. | DatabaseName | No |
Tuple aggiornate | tup_updated |
Conteggio | Numero di righe aggiornate dalle query in questo database. | DatabaseName | No |
Replica logica
Nome visualizzato | ID metrica | Unità | Descrizione | Dimensione | Impostazione predefinita abilitata |
---|---|---|---|---|---|
Ritardo massimo replica logica | logical_replication_delay_in_bytes |
Byte | Ritardo massimo tra tutti gli slot di replica logica. | Non applicabile | Sì |
Replica
Nome visualizzato | ID metrica | Unità | Descrizione | Dimensione | Impostazione predefinita abilitata |
---|---|---|---|---|---|
Ritardo massimo replica fisica | physical_replication_delay_in_bytes |
Byte | Ritardo massimo tra tutti gli slot di replica fisica asincroni. | Non applicabile | Sì |
Ritardo replica lettura | physical_replication_delay_in_seconds |
Secondi | Ritardo della replica in lettura in secondi. | Non applicabile | Sì |
Saturazione
Nome visualizzato | ID metrica | Unità | Descrizione | Dimensione | Impostazione predefinita abilitata |
---|---|---|---|---|---|
Percentuale di utilizzo della larghezza di banda del disco | disk_bandwidth_consumed_percentage |
Percentuale | Percentuale della larghezza di banda del disco dati utilizzata al minuto. | Non applicabile | Sì |
Percentuale utilizzo operazioni di I/O al secondo del disco | disk_iops_consumed_percentage |
Percentuale | Percentuale di operazioni di I/O del disco dati utilizzate al minuto. | Non applicabile | Sì |
Traffico
Nome visualizzato | ID metrica | Unità | Descrizione | Dimensione | Impostazione predefinita abilitata |
---|---|---|---|---|---|
Numero massimo di connessioni ^ | max_connections |
Conteggio | Numero massimo di connessioni. | Non applicabile | Sì |
^ Max Connessione ions rappresenta il valore configurato per il parametro del max_connections
server. Questa metrica viene eseguita ogni 30 minuti.
Considerazioni sull'uso di metriche avanzate
- Le metriche avanzate che usano la dimensione DatabaseName hanno un limite di 50 database .
- Nello SKU burstable il limite è 10 database per le metriche che usano la dimensione DatabaseName.
- Il limite della dimensione DatabaseName viene applicato alla colonna identificatore di database (datid) della vista di sistema pg_stat_database, che riflette l'ordine di creazione per il database.
- Nella
DatabaseName
dimensione delle metriche non viene fatta distinzione tra maiuscole e minuscole. Ciò significa che dopo aver eseguito querypg_stat_database
sulla vista, filtrare le righe in cuidatname
ètemplate1
otemplate0
, ordinandodatid
in base a e limitando le righe restituite ai primi 50 (o 10 nel caso dello SKU burstable ), le metriche per i nomi di database nel set di risultati sono uguali, ad eccezione del caso (ad esempio,contoso_database
eContoso_database
) verranno uniti e potrebbero non mostrare dati accurati.
Metriche autovacuum
Le metriche autovacuum possono essere usate per monitorare e ottimizzare le prestazioni autovacuum per Database di Azure per PostgreSQL - Server flessibile. Ogni metrica viene generata a intervalli di 30 minuti e ha fino a 93 giorni di conservazione. È possibile creare avvisi per metriche specifiche ed è possibile suddividere e filtrare i dati delle metriche usando la DatabaseName
dimensione .
Come abilitare le metriche autovacuum
- Le metriche autovacuum sono disabilitate per impostazione predefinita.
- Per abilitare queste metriche, impostare il parametro
metrics.autovacuum_diagnostics
del server suON
. - Questo parametro è dinamico, quindi non è necessario riavviare un'istanza.
Elenco delle metriche autovacuum
Nome visualizzato | ID metrica | Unità | Descrizione | Dimensione | Impostazione predefinita abilitata |
---|---|---|---|---|---|
Analizzare le tabelle utente contatore | analyze_count_user_tables |
Conteggio | Numero di volte in cui le tabelle solo utente sono state analizzate manualmente in questo database. | DatabaseName | No |
Tabelle utente contatore di AutoAnalyze | autoanalyze_count_user_tables |
Conteggio | Numero di volte in cui le tabelle solo utente sono state analizzate dal daemon autovacuum in questo database. | DatabaseName | No |
Tabelle utente contatore AutoVacuum | autovacuum_count_user_tables |
Conteggio | Numero di volte in cui il daemon autovacuum in questo database ha eseguito il vuoto delle tabelle solo utente. | DatabaseName | No |
Percentuale bloat (anteprima) | bloat_percent |
Percentuale | Percentuale di bloat stimata solo per le tabelle utente. | DatabaseName | No |
Tabelle utente di righe non recapitabili stimate | n_dead_tup_user_tables |
Conteggio | Numero stimato di righe non recapitabili per le tabelle solo utente in questo database. | DatabaseName | No |
Tabelle utente delle righe live stimate | n_live_tup_user_tables |
Conteggio | Numero stimato di righe attive per le tabelle solo utente in questo database. | DatabaseName | No |
Tabelle utente delle modifiche stimate | n_mod_since_analyze_user_tables |
Conteggio | Numero stimato di righe modificate dopo l'ultima analisi delle tabelle di sola utente. | DatabaseName | No |
Tabelle utente analizzate | tables_analyzed_user_tables |
Conteggio | Numero di tabelle solo utente analizzate in questo database. | DatabaseName | No |
AutoAnalyzed tabelle utente | tables_autoanalyzed_user_tables |
Conteggio | Numero di tabelle solo utente analizzate dal daemon autovacuum in questo database. | DatabaseName | No |
AutoVacuumed tabelle utente | tables_autovacuumed_user_tables |
Conteggio | Numero di tabelle solo utente a cui è stato eseguito il vuoto dal daemon autovacuum in questo database. | DatabaseName | No |
Contatore tabelle utente | tables_counter_user_tables |
Conteggio | Numero di tabelle solo utente in questo database. | DatabaseName | No |
Tabelle utente con vuoto | tables_vacuumed_user_tables |
Conteggio | Numero di tabelle solo utente a cui è stato eseguito il vuoto in questo database. | DatabaseName | No |
Tabelle utente del contatore vacuum | vacuum_count_user_tables |
Conteggio | Numero di volte in cui le tabelle solo utente sono state sottovuoto manualmente in questo database (senza contare VACUUM FULL ). |
DatabaseName | No |
Considerazioni sull'uso delle metriche autovacuum
- Le metriche autovacuum che usano la dimensione DatabaseName hanno un limite di 30 database .
- Nello SKU burstable il limite è 10 database per le metriche che usano la dimensione DatabaseName.
- Il limite della dimensione DatabaseName viene applicato alla colonna OID, che riflette l'ordine di creazione per il database.
Metriche pgBouncer
È possibile usare le metriche PgBouncer per monitorare le prestazioni del processo PgBouncer, inclusi i dettagli relativi alle connessioni attive, alle connessioni inattive, alle connessioni in pool totali e al numero di pool di connessioni. Ogni metrica viene generata a intervalli di 1 minuto e ha fino a 93 giorni di cronologia. I clienti possono configurare avvisi sulle metriche e accedere alle nuove dimensioni delle metriche per suddividere e filtrare i dati delle metriche in base al nome del database.
Come abilitare le metriche PgBouncer
- Le metriche pgBouncer sono disabilitate per impostazione predefinita.
- Per il funzionamento delle metriche PgBouncer, entrambi i
pgbouncer.enabled
parametri del server emetrics.pgbouncer_diagnostics
devono essere abilitati. - Questi parametri sono dinamici e non richiedono un riavvio dell'istanza.
Elenco delle metriche PgBouncer
Nome visualizzato | ID metrica | Unità | Descrizione | Dimensione | Impostazione predefinita abilitata |
---|---|---|---|---|---|
Connessioni client attive | client_connections_active |
Conteggio | Connessione dai client associati a una connessione server flessibile Database di Azure per PostgreSQL. | DatabaseName | No |
Connessioni client in attesa | client_connections_waiting |
Conteggio | Connessione dai client in attesa di una connessione Database di Azure per PostgreSQL - Server flessibile per gestirli. | DatabaseName | No |
Connessioni server attive | server_connections_active |
Conteggio | Connessione ions a Database di Azure per PostgreSQL - Server flessibile in uso da una connessione client. | DatabaseName | No |
Connessioni server inattive | server_connections_idle |
Conteggio | Connessione ions per Database di Azure per PostgreSQL - Server flessibile inattiva e pronto per il servizio di una nuova connessione client. | DatabaseName | No |
Totale connessioni in pool | total_pooled_connections |
Conteggio | Numero corrente di connessioni in pool. | DatabaseName | No |
Numero di pool di connessioni | num_pools |
Conteggio | Numero totale di pool di connessioni. | DatabaseName | No |
Considerazioni sull'uso delle metriche PgBouncer
- Le metriche PgBouncer che usano la dimensione DatabaseName hanno un limite di 30 database .
- Nello SKU burstable il limite è 10 database con dimensione DatabaseName.
- Il limite della dimensione DatabaseName viene applicato alla colonna OID, che riflette l'ordine di creazione per il database.
Metrica di disponibilità del database
Is-db-alive è una metrica di disponibilità del server di database per Database di Azure per PostgreSQL server flessibile che restituisce [1 for available]
e [0 for not-available]
. Ogni metrica viene generata a una frequenza di 1 minuto e ha fino a 93 giorni di conservazione. I clienti possono configurare avvisi sulla metrica.
Nome visualizzato | ID metrica | Unità | Descrizione | Dimensione | Impostazione predefinita abilitata |
---|---|---|---|---|---|
Database attivo | is_db_alive |
Conteggio | Indica se il database è in funzione o meno. | N/a | Sì |
Considerazioni sull'uso delle metriche di disponibilità del database
- L'aggregazione di questa metrica con
MAX()
consentirà ai clienti di determinare se il server è stato verso l'alto o verso il basso nell'ultimo minuto. - I clienti possono aggregare ulteriormente queste metriche con qualsiasi frequenza desiderata (5m, 10m, 30m e così via) per soddisfare i requisiti di avviso ed evitare eventuali falsi positivi.
- Altre aggregazioni possibili sono
AVG()
eMIN()
.
Filtrare e suddividere le metriche delle dimensioni
Nelle tabelle precedenti alcune metriche hanno dimensioni come DatabaseName o State. È possibile usare il filtro e la suddivisione per le metriche con dimensioni. Queste funzionalità mostrano come vari segmenti di metrica (o valori delle dimensioni) influiscano sul valore complessivo della metrica. È possibile usarli per identificare i possibili outlier.
- Filtro: usare il filtro per scegliere i valori delle dimensioni inclusi nel grafico. Ad esempio, è possibile visualizzare le connessioni inattive quando si esegue il grafico della
Sessions-by-State
metrica. Impostare il filtro per Inattività nella dimensione State. - Suddivisione: utilizzare la suddivisione per controllare se il grafico visualizza linee separate per ogni valore di una dimensione o se aggrega i valori in una singola riga. Ad esempio, è possibile visualizzare una riga per una
Sessions-by-State
metrica in tutte le sessioni. È possibile visualizzare righe separate per ogni sessione raggruppata in base al valore Di stato. Applicare la suddivisione nella dimensione State per visualizzare linee separate.
Nell'esempio seguente viene illustrata la suddivisione in base alla dimensione State e il filtro in base a valori di stato specifici:
Per altre informazioni sulla configurazione dei grafici per le metriche dimensionali, vedere Esempi di grafico delle metriche.
Visualizzazione delle metriche
Sono disponibili diverse opzioni per visualizzare le metriche di Monitoraggio di Azure.
Componente | Descrizione | Training e/o configurazione necessari |
---|---|---|
Pagina di panoramica | La maggior parte dei servizi di Azure include una pagina Panoramica nella portale di Azure che include una sezione Monitoraggio con grafici che mostrano le metriche critiche recenti. Queste informazioni sono destinate ai proprietari di singoli servizi per valutare rapidamente le prestazioni della risorsa. | Questa pagina si basa sulle metriche della piattaforma raccolte automaticamente. Non è richiesta alcuna configurazione. |
Esplora metriche | È possibile usare Esplora metriche per lavorare in modo interattivo con i dati delle metriche e creare avvisi delle metriche. È sufficiente un training minimo per utilizzare Esplora metriche, ma è necessario avere familiarità con le metriche da analizzare. | - Dopo aver configurato la raccolta dati, non è necessaria alcuna altra configurazione. - Le metriche della piattaforma per le risorse di Azure sono disponibili automaticamente. - Le metriche guest per le macchine virtuali sono disponibili dopo la distribuzione di un agente di Monitoraggio di Azure nella macchina virtuale. - Le metriche dell'applicazione sono disponibili dopo la configurazione di Application Insights. |
Grafana | È possibile usare Grafana per visualizzare e inviare avvisi sulle metriche. Tutte le versioni di Grafana includono il plug-in origine dati di Monitoraggio di Azure per visualizzare le metriche e i log di Monitoraggio di Azure. | Per acquisire familiarità con i dashboard di Grafana, è necessario un training. Tuttavia, è possibile semplificare il processo scaricando un dashboard di monitoraggio grafana server grafana predefinito Database di Azure per PostgreSQL predefinito, che consente di monitorare facilmente tutte le istanze del server flessibile Database di Azure per PostgreSQL all'interno dell'organizzazione. |
Registri
Oltre alle metriche, è possibile usare Database di Azure per PostgreSQL server flessibile per configurare e accedere Database di Azure per PostgreSQL log standard. Per altre informazioni, vedere Concetti relativi alla registrazione.
Visualizzazione dei log
Componente | Descrizione | Training e/o configurazione necessari |
---|---|---|
Log Analytics | Con Log Analytics è possibile creare query di log per lavorare in modo interattivo con i dati di log e creare avvisi di query di log. | Per acquisire familiarità con il linguaggio di query, è necessario un training, anche se è possibile usare query predefinite per i requisiti comuni. |
Passaggi successivi
- Altre informazioni su come configurare e accedere ai log.
- Altre informazioni sui prezzi di Monitoraggio di Azure.
- Altre informazioni sui log di controllo.