Metriche di monitoraggio supportate

Questa pagina elenca le metriche disponibili per Memorystore for Redis e descrive cosa misura ciascuna metrica.

Per scoprire come visualizzare queste metriche, consulta Monitorare le istanze.

Metriche di Cloud Monitoring

Questa sezione elenca e descrive le metriche di Cloud Monitoring disponibili per Memorystore for Redis.

Nome metrica Descrizione
redis.googleapis.com/keyspace/avg_ttl Questa metrica misura la durata (TTL) media, in millisecondi, di tutte le chiavi in un database Redis a cui è stata impostata una scadenza. Puoi utilizzare la metrica per comprendere il ciclo di vita dei dati memorizzati nella cache e identificare se le chiavi scadono prima o dopo il previsto nelle tue istanze.
redis.googleapis.com/clients/blocked

Questa metrica monitora il numero di connessioni client che sono in attesa che i dati diventino disponibili perché i comandi di blocco sono in esecuzione in un'istanza. Questi comandi di blocco includono BLPOP, BRPOP e BRPOPLPUSH. Un numero elevato di client bloccati potrebbe indicare che la tua applicazione è in attesa del completamento di determinati eventi o chiavi.

Puoi monitorare questa metrica per comprendere il comportamento della tua applicazione, soprattutto se noti aumenti imprevisti della latenza che potrebbero essere correlati a client in attesa di operazioni di blocco.

redis.googleapis.com/replication/master/slaves/lag

Questa metrica misura il numero di secondi di ritardo di una replica rispetto a un'istanza primaria. Memorystore for Redis calcola il valore della metrica prendendo l'ora corrente e sottraendo l'ora in cui la replica riconosce di aver ricevuto il messaggio dei byte in entrata.

Puoi utilizzare la metrica per identificare se una replica è in ritardo rispetto all'istanza principale.

redis.googleapis.com/replication/offset_diff

Questa metrica monitora il numero di byte che non vengono replicati in una replica. La metrica rappresenta la differenza tra l'offset dei byte di replica di un'istanza principale e l'offset dei byte di replica della replica. Se non c'è alcuna differenza tra questi offset, la replica è completamente sincronizzata con l'istanza primaria.

Poiché l'istanza principale replica i dati nella replica durante un processo di failover, potresti notare un aumento di questi byte in attesa.

redis.googleapis.com/stats/cache_hit_ratio

Questa metrica rappresenta il rapporto tra le chiamate al database Redis riuscite e quelle non riuscite. Una chiamata ha esito positivo quando il database Redis restituisce il valore richiesto dal chiamante.

Un rapporto cache-to-hit più elevato indica che la cache viene utilizzata in modo più completo. Ciò è vantaggioso per le prestazioni della tua applicazione.

redis.googleapis.com/commands/calls

Questa metrica misura il numero di comandi Redis eseguiti ogni minuto su un'istanza primaria. Sono inclusi tutti i comandi Redis open source, tra cui SET , GET e HSET . La metrica non conteggia i comandi Memorystore for Redis come create o update.

redis.googleapis.com/clients/connected Questa metrica mostra il numero di client connessi a un'istanza. Puoi monitorare la metrica per identificare il carico sull'istanza. Se il numero di client connessi si avvicina al limite di maxclients, il server potrebbe rifiutare i nuovi tentativi di connessione.
redis.googleapis.com/stats/cpu_utilization

Questa metrica misura il tempo di utilizzo della CPU al minuto utilizzato dal server Redis. Questo tempo è suddiviso in base allo spazio utente-sistema e alle relazioni padre-figlio.

Il valore per i secondi CPU mostra il totale dei secondi CPU per tutti i thread del processo principale del server Redis. Se vuoi visualizzare l'utilizzo della CPU per il thread principale, visualizza la metrica Secondi CPU thread principale (cpu_utilization_main_thread).

L'utilizzo elevato della CPU è una causa comune dell'aumento della latenza nelle istanze Redis perché può causare ritardi nell'elaborazione dei comandi. Monitorando questa metrica, puoi identificare se un carico elevato da numerosi client determina l'utilizzo della CPU.

redis.googleapis.com/stats/evicted_keys

Questa metrica mostra il numero di chiavi che Memorystore for Redis elimina da un'istanza perché l'istanza raggiunge il limite di maxmemory.

Monitorando questa metrica, puoi determinare se la dimensione della memoria dell'istanza è sufficiente per il tuo workload. Se i dati a cui si accede di frequente vengono rimossi dalla cache, le espulsioni delle chiavi possono influire sulle prestazioni dell'applicazione.

redis.googleapis.com/keyspace/keys_with_expiration Questa metrica monitora il numero di chiavi in un'istanza per cui è configurata una scadenza. Se nessuna chiave ha una scadenza, nel grafico della metrica viene visualizzato il messaggio "Nessun dato".
redis.googleapis.com/keyspace/keys Questa metrica mostra il numero totale di chiavi memorizzate in un database. Se non sono memorizzate chiavi, nel grafico della metrica viene visualizzato "Nessun dato".
redis.googleapis.com/stats/cpu_utilization_main_thread Questa metrica misura i secondi di CPU utilizzati dal thread principale del server Redis. Questa misurazione è suddivisa in base allo spazio utente del sistema e alla relazione genitore-figlio. Puoi monitorare la metrica per identificare i picchi di utilizzo della CPU che si verificano nel thread principale.
redis.googleapis.com/stats/memory/maxmemory Questa metrica rappresenta la quantità massima di memoria (maxmemory) che le chiavi possono utilizzare in un'istanza. Una volta raggiunto questo limite, Memorystore for Redis elimina le chiavi dall'istanza. Questo processo di espulsione viene eseguito in conformità con le norme di espulsione configurate per l'istanza.
redis.googleapis.com/stats/memory/usage_ratio Questa metrica mostra l'utilizzo attuale della memoria di un'istanza espresso come rapporto rispetto al limite massimo di memoria. Puoi monitorare la metrica per determinare quanto l'istanza è vicina alla sua capacità. In base alla configurazione dell'istanza, il raggiungimento di questo limite attiva la procedura di eliminazione delle chiavi.
redis.googleapis.com/stats/keyspace_misses

Questa metrica monitora il numero di ricerche non riuscite di chiavi nel dizionario principale. La metrica viene incrementata ogni volta che un client tenta di accedere a una chiave che non esiste nel database.

La metrica viene utilizzata per calcolare il rapporto cache-to-hit, che misura l'efficacia con cui la tua applicazione utilizza la cache. Un numero elevato di mancati riscontri dello spazio delle chiavi spesso indica che l'applicazione richiede dati non presenti nella cache. Se l'applicazione deve recuperare questi dati da un datastore di backend più lento, ciò può comportare un aumento della latenza.

redis.googleapis.com/replication/role

Questa metrica restituisce un valore che identifica il ruolo di un nodo in un gruppo di replica. Un valore pari a 1 indica che il nodo è primario; un valore pari a 0 indica che il nodo è una replica.

Puoi utilizzare la metrica per monitorare lo stato dei nodi, in particolare durante gli eventi di failover in cui i ruoli potrebbero cambiare. Inoltre, puoi monitorare l'integrità e la topologia delle istanze di livello standard, che supportano l'alta affidabilità tramite la replica.

redis.googleapis.com/persistence/rdb/bgsave_in_progress

Questa metrica restituisce un valore che identifica se un'operazione di salvataggio in background (BGSAVE) del database Redis (RDB) è attiva. Un valore 1 indica che è attivo un salvataggio RDB in background; un valore 0 indica che non è in esecuzione alcun salvataggio in background.

Puoi utilizzare la metrica per monitorare gli snapshot RDB automatizzati o le esportazioni manuali. Inoltre, monitorando la metrica, puoi correlare picchi transitori nell'utilizzo della memoria o nella latenza con le attività di persistenza in corso.

redis.googleapis.com/stats/pubsub/channels Questa metrica monitora il numero globale di canali Pub/Sub che hanno abbonamenti client attivi in un'istanza. La metrica misura il conteggio totale dei canali unici a cui i client sono iscritti utilizzando i comandi SUBSCRIBE o PSUBSCRIBE.
redis.googleapis.com/stats/pubsub/patterns Questa metrica monitora il numero globale di pattern Pub/Sub che hanno sottoscrizioni client attive in un'istanza. La metrica misura il conteggio totale dei pattern unici a cui sono iscritti i clienti. I client in genere creano queste sottoscrizioni utilizzando il comando PSUBSCRIBE.
redis.googleapis.com/stats/reject_connections_count

Questa metrica monitora il numero di tentativi di connessione che un'istanza rifiuta per i seguenti motivi:

  • Il limite maxclients: il server raggiunge il numero massimo consentito di connessioni client simultanee.
  • Pressione della memoria: l'istanza rifiuta nuove connessioni a causa dell'elevato utilizzo della memoria.
  • Una connessione TLS non valida: un'istanza in cui è attivata la crittografia in transito presenta problemi relativi a TLS.

Monitorando la metrica, puoi identificare i problemi di capacità. Se il numero di connessioni rifiutate aumenta, potrebbe essere necessario scalare l'istanza per gestire più connessioni o aumentare la capacità di memoria dell'istanza. Inoltre, quando la crittografia è applicata, puoi utilizzare la metrica per eseguire il debug dei problemi di connessione lato client.

redis.googleapis.com/replication/master_repl_offset Questa metrica rappresenta il numero totale di byte che un'istanza principale produce e invia a una replica. Sottraendo l'offset di byte di replica della replica da questo offset, puoi calcolare la dimensione del ritardo di replica. Quando non c'è alcuna differenza tra questi valori di offset, la replica è completamente sincronizzata con l'istanza primaria.
redis.googleapis.com/replication/master/slaves/offset Questa metrica indica il numero totale di byte che una replica riceve da un'istanza primaria. Sottraendo questo offset dall'offset di byte di replica dell'istanza primaria, puoi calcolare la dimensione del ritardo di replica. Quando non c'è alcuna differenza tra questi valori di offset, la replica è completamente sincronizzata con l'istanza primaria.
redis.googleapis.com/stats/memory/system_memory_usage_ratio Questa metrica rappresenta la quantità di memoria in uso, espressa come rapporto tra la memoria totale disponibile per il sistema. La memoria di sistema totale disponibile è la memoria di cui esegui il provisioning per un'istanza più la memoria aggiuntiva fornita da Memorystore for Redis per gestire i processi di overhead.
redis.googleapis.com/stats/memory/system_memory_overload_duration

Questa metrica misura la quantità totale di tempo (in microsecondi) in cui un'istanza si trova in modalità di sovraccarico della memoria di sistema.

Puoi utilizzare la metrica per monitorare i periodi in cui l'utilizzo della memoria dell'istanza supera le soglie operative sicure per il sistema. Valori persistenti nella metrica potrebbero indicare che l'istanza è a rischio di riduzione o instabilità delle prestazioni a causa di memoria insufficiente per i processi di overhead.

redis.googleapis.com/commands/usec_per_call

Questa metrica rappresenta il tempo medio trascorso per ogni chiamata di comando Redis in un minuto. Questo tempo viene misurato in microsecondi.

La metrica è suddivisa per singoli comandi. In questo modo puoi monitorare il rendimento di operazioni specifiche, come GET, SET e HSET.

Puoi anche utilizzare la metrica per misurare la latenza dell'istanza. Confrontando il tempo per chiamata in diversi punti, puoi identificare le variazioni di rendimento e analizzare le cause di una discrepanza di latenza.

redis.googleapis.com/stats/connections/total Questa metrica rappresenta il numero totale di connessioni accettate dal server.
redis.googleapis.com/commands/total_time Questa metrica misura la durata totale, in microsecondi, trascorsa su ogni comando Redis open source (ad esempio SET, GET o HSET) nell'ultimo secondo. Ad esempio, se il comando SET utilizza 800.000 microsecondi, richiede l'80% di un singolo core della CPU per elaborare tutte le istanze di quel comando combinate.
redis.googleapis.com/stats/network_traffic Questa metrica rappresenta il numero totale di byte inviati a o da Redis. Questo conteggio include i byte dei comandi, i dati del payload e tutti i delimitatori.
redis.googleapis.com/server/uptime Questa metrica indica l'uptime del processo del server Redis in esecuzione.
redis.googleapis.com/stats/memory/usage Questa metrica rappresenta il numero totale di byte allocati dal processo del server Redis.

Metriche dei dettagli dell'istanza

Questa sezione elenca e descrive le metriche disponibili per un'istanza nella pagina Dettagli istanza della console Google Cloud .

Nome metrica Descrizione
Byte in attesa di replica

Questa metrica mostra la quantità di dati scritti in un nodo primario, ma non copiati in un nodo di replica. Rappresenta la differenza tra l'offset dei byte di replica dell'istanza primaria e l'offset della replica.

Un valore pari a zero per la metrica indica che la replica è completamente sincronizzata con l'istanza primaria. Un valore elevato si verifica in genere durante i periodi di attività di scrittura elevata o durante un processo di failover perché i dati vengono sincronizzati.

Percentuale successi cache

Questa metrica mostra il rapporto tra le chiamate al database Redis riuscite (hit) e il numero totale di chiamate (hit più errori). La metrica rappresenta l'efficacia con cui la tua applicazione utilizza la cache.

Un rapporto cache-to-hit più elevato indica che un numero maggiore di richieste viene soddisfatto direttamente dalla cache. Ciò è vantaggioso per il rendimento dell'applicazione perché riduce la latenza.

Un rapporto basso o in calo spesso indica che le richieste della tua applicazione dati non presenti nella cache. Potrebbe essere necessario aumentare le dimensioni dell'istanza o modificare la logica di compilazione dei dati.

Chiamate

Questa metrica mostra il numero di comandi Redis eseguiti su un'istanza principale ogni minuto. La metrica conteggia tutti i comandi Redis open source, come SET, GET e HSET. Tuttavia, la metrica non include i comandi specifici di Memorystore for Redis, come create o update.

Puoi utilizzare la metrica per misurare e analizzare la latenza dell'istanza. Confrontando il volume di chiamate con il tempo dedicato, puoi identificare le variazioni di rendimento e analizzare le possibili cause dei picchi di latenza.

Client connessi / client bloccati

Questa metrica mostra le seguenti informazioni:

  • Client connessi: il numero totale di client connessi a un'istanza. Puoi utilizzare queste informazioni per identificare il carico complessivo sull'istanza. Se il numero di client connessi si avvicina al limite di maxclients, il server potrebbe iniziare a rifiutare i nuovi tentativi di connessione.

    Il monitoraggio del numero di client connessi ti aiuta a determinare se ti avvicini ai limiti di connessione che richiedono lo scaling o il pooling delle connessioni.

  • Client bloccati: il numero di connessioni client che attendono i dati perché eseguono comandi di blocco, ad esempio BLPOP, BRPOP e BRPOPLPUSH.

    Un numero elevato di client bloccati può indicare che la tua applicazione attende eventi specifici o il completamento delle chiavi. Ciò può manifestarsi con un aumento della latenza nell'applicazione.

Secondi CPU

Questa metrica mostra il tempo totale di utilizzo della CPU (in secondi) che un'istanza utilizza in un periodo specifico.

Monitorando questa metrica, puoi determinare se l'istanza ha un utilizzo elevato della CPU. Questa è una causa frequente di aumento della latenza perché l'utilizzo elevato della CPU può ritardare l'elaborazione dei comandi. Puoi anche utilizzare la metrica per determinare se un carico elevato da un numero elevato di client determina l'utilizzo della CPU.

Chiavi rimosse / chiavi scadute

Questa metrica mostra le seguenti informazioni:

  • Chiavi rimosse: il numero di chiavi che Memorystore for Redis rimuove (espelle) da un'istanza perché l'istanza raggiunge il limite massimo di memoria (maxmemory)
  • Chiavi scadute: il numero di chiavi che raggiungono il limite di scadenza e vengono eliminate
Tempo di attività istanza

Questa metrica indica il periodo di tempo totale durante il quale il processo del server Redis viene eseguito ininterrottamente. Se un'istanza viene riavviata a causa di un failover, manutenzione o un arresto anomalo imprevisto, il valore della metrica scende a zero e poi aumenta di nuovo a partire dal nuovo orario di inizio.

Puoi utilizzare la metrica per identificare e correlare interruzioni impreviste del servizio, eventi di failover o finestre di manutenzione con altre modifiche alle prestazioni.

Chiavi nel database

Questa metrica mostra il numero totale di chiavi archiviate in ogni database Redis all'interno di un'istanza. La metrica monitora tutte le chiavi presenti nei database, indipendentemente dal fatto che abbiano una scadenza impostata. Se nei database non sono memorizzate chiavi, nel grafico della metrica viene visualizzato il messaggio "Nessun dato" anziché il valore zero.

Puoi monitorare la metrica per verificare che l'istanza riceva traffico e memorizzi i dati. Un calo improvviso della metrica potrebbe indicare una perdita di dati, un'espulsione di massa o un riavvio dell'istanza.

Utilizzo memoria / memoria max Questa metrica mostra l'utilizzo della memoria di un'istanza rispetto al limite massimo di memoria (maxmemory). Questo limite rappresenta la quantità massima di memoria che le chiavi possono utilizzare nell'istanza. Una volta raggiunto il limite, Memorystore for Redis inizia a eliminare le chiavi in conformità con le norme di eliminazione configurate per l'istanza.
Input/output byte di rete

Questa metrica mostra il numero di byte che un'istanza invia e riceve in un determinato periodo. Questo traffico di rete include dati provenienti da comandi, dati utili e delimitatori.

Puoi utilizzare la metrica per comprendere il carico di rete della tua applicazione, identificare i colli di bottiglia della larghezza di banda e correlare i picchi di rete con le variazioni di latenza o con il rendimento della tua applicazione.

Connessioni ricevute/rifiutate Questa metrica mostra i tentativi di connessione di rete riusciti (ricevuti) e i tentativi di connessione rifiutati in un determinato periodo. Puoi utilizzare la metrica per comprendere la velocità di connessione in entrata, rilevare picchi di connessione e diagnosticare problemi di capacità o connettività del client.

Metriche snapshot RDB

Questa sezione elenca e descrive le metriche che ti aiutano a gestire gli snapshot RDB per Memorystore for Redis.

Metriche di monitoraggio degli snapshot

Questa sezione elenca e descrive le metriche di monitoraggio degli snapshot per Memorystore for Redis.

Nome metrica Descrizione
redis.googleapis.com/rdb/enabled Questa metrica indica se la modalità snapshot RDB è abilitata per un'istanza.
redis.googleapis.com/rdb/snapshot/time_until_next_run Questa metrica indica il numero di secondi che mancano all'inizio della successiva esecuzione dello snapshot pianificato.

Metriche sullo stato degli snapshot

Questa sezione elenca e descrive le metriche di stato degli snapshot per Memorystore for Redis.

Nome metrica Descrizione
redis.googleapis.com/rdb/snapshot/in_progress Questa metrica indica se è in corso uno snapshot RDB. Se il valore della metrica è true, viene eseguito lo snapshot.
redis.googleapis.com/rdb/snapshot/elapsed_time Questa metrica misura il tempo trascorso durante la creazione dello snapshot corrente.
redis.googleapis.com/rdb/snapshot/attempt_count Questa metrica indica il numero di tentativi di snapshot effettuati ogni minuto.
redis.googleapis.com/rdb/snapshot/last_status Questa metrica indica lo stato dell'ultimo tentativo di snapshot.
redis.googleapis.com/rdb/snapshot/last_success_duration Questa metrica indica il tempo totale necessario per scrivere l'ultimo snapshot riuscito. Questo tempo non include i tentativi non riusciti.
redis.googleapis.com/rdb/snapshot/last_success_age Questa metrica indica il tempo trascorso dall'inizio dell'ultimo snapshot riuscito.

Metriche di recupero degli snapshot

Questa sezione elenca e descrive le metriche di ripristino degli snapshot per Memorystore for Redis.

Nome metrica Descrizione
redis.googleapis.com/rdb/recovery/in_progress Questa metrica indica se viene eseguito un recupero da uno snapshot RDB. Se il valore di questa metrica è true, è in corso un ripristino.
redis.googleapis.com/rdb/recovery/elapsed_time Questa metrica indica l'aumento del tempo trascorso durante un recupero in corso da uno snapshot RDB.
redis.googleapis.com/rdb/recovery/estimated_recovery_time Questa metrica indica il tempo previsto per il ripristino quando viene utilizzato l'ultimo snapshot RDB riuscito.
redis.googleapis.com/rdb/recovery/estimated_remaining_time Questa metrica indica il tempo rimanente necessario per completare un recupero da uno snapshot RDB.
redis.googleapis.com/rdb/recovery/attempts_since_last_success Questa metrica indica il numero di tentativi di ripristino dall'ultimo tentativo di ripristino riuscito da uno snapshot RDB.
redis.googleapis.com/rdb/recovery/last_status Questa metrica indica lo stato del recupero più recente da uno snapshot RDB.
redis.googleapis.com/rdb/recovery/last_duration Questa metrica indica il tempo necessario per ripristinare l'ultimo snapshot RDB.
redis.googleapis.com/rdb/recovery/total_bytes_count Questa metrica indica le dimensioni di uno snapshot RDB.
redis.googleapis.com/rdb/recovery/loaded_bytes_count Questa metrica indica il numero di byte caricati durante il recupero da uno snapshot RDB. Se il recupero non è attivo, il numero di byte è 0.