Recupero dati SLO

I dati SLO vengono archiviati in serie temporali. Puoi recuperare le serie temporali SLO specificando un selettore delle serie temporali nel parametro filter nel metodo timeSeries.list oppure utilizzando la modalità di filtro diretto in Metrics Explorer.

Criteri di avviso basati su SLO

Se crei un criterio di avviso utilizzando l'API Cloud Monitoring, devi specificare il filtro utilizzando un selettore delle serie temporali come campo nella condizione di soglia del criterio. Per informazioni su come creare criteri di avviso basati su SLO utilizzando l'API Monitoring, consulta Creare un criterio di avviso.

Solo un sottoinsieme dei selettori delle serie temporali disponibili per gli SLO può essere utilizzato nei criteri di avviso. Inoltre, i criteri di avviso basati su SLO creati con la console Google Cloud utilizzano sempre il selettore select_slo_burn_rate.

Utilizzo di un selettore di serie temporali in un filtro

Per recuperare i dati delle serie temporali per gli SLO, il filtro deve specificare un selettore delle serie temporali. I dati SLO non vengono archiviati con i tipi di metrica e non possono essere recuperati con il filtro che specifica una coppia di tipi di metrica e risorse monitorate.

Nomi e argomenti

I selettori delle serie temporali hanno uno dei formati seguenti:

SELECTOR_NAME(SLO_NAME)
SELECTOR_NAME(SLO_NAME, LOOKBACK_PERIOD)

I selettori hanno nomi che iniziano con select_slo_ e accettano uno o due argomenti:

  • Il primo argomento del selettore è il nome della risorsa per uno SLO, simile al seguente:

    projects/PROJECT_ID/services/SERVICE_ID/serviceLevelObjectives/SLO_ID
    

    L'espressione precedente contiene tre variabili:

    • PROJECT_ID: nome o numero di un progetto Google Cloud.
    • SERVICE_ID: nome di un servizio.
    • SLO_ID: identificatore di uno SLO definito per il servizio.

    Per informazioni su come trovare i valori dei campi SERVICE_ID e SLO_ID del tuo progetto Google Cloud, consulta Utilizzo dell'API.

  • Il secondo argomento, se supportato, è un periodo di ricerca. Consulta Tipi di avvisi sul budget di errore per informazioni sui periodi temporali. Le unità di tempo valide sono "ns", "us" "ms", "s", "m", "h".

Ad esempio, il selettore select_slo_budget prende un argomento SLO_NAME, pertanto un filtro che utilizza questo selettore ha il seguente aspetto:

select_slo_budget("projects/PROJECT_ID/services/SERVICE_ID/serviceLevelObjectives/SLO_ID")

Al contrario, il selettore select_slo_burn_rate richiede gli argomenti SLO_NAME e LOOKBACK_PERIOD, pertanto un filtro che utilizza questo selettore ha il seguente aspetto:

select_slo_burn_rate("projects/PROJECT_ID/services/SERVICE_ID/serviceLevelObjectives/SLO_ID", "3600s")

Per un elenco e una descrizione di tutti i selettori, consulta Selettori delle serie temporali.

Recupero dei dati con un selettore

Un modo per eseguire query sui dati delle serie temporali è utilizzare lo strumento Explorer API nella pagina di riferimento del metodo timeSeries.list. Per informazioni su questo strumento, consulta Explorer API.

Ad esempio, per recuperare informazioni sul budget di uno SLO, completa i seguenti campi nello strumento Explorer API:

  • nome: projects/PROJECT_ID
  • filtro: select_slo_budget("projects/PROJECT_ID/services/SERVICE_ID/serviceLevelObjectives/SLO_ID")
  • interval.startTime: 2021-10-07T13:00:20-04:00
  • interval.endTime: 2021-10-08T13:00:20-04:00

Per un sistema, dopo la sostituzione di variabili come PROJECT_ID con i valori e l'esecuzione del metodo, vengono restituiti i seguenti dati della serie temporale:

Un estratto della serie temporale recuperata

Selettori delle serie temporali

Questa sezione elenca i selettori delle serie temporali disponibili per gli SLO e descrive cosa rappresentano. Tutti i selettori possono essere utilizzati nei filtri con il metodo timeSeries.list per recuperare i dati delle serie temporali. Non tutti sono supportati nei criteri di avviso.

select_slo_burn_rate

Sintassi: select_slo_burn_rate(SLO_NAME, LOOKBACK_PERIOD)

Il selettore delle serie temporali "tasso di burn-out" restituisce il rapporto tra la percentuale di errori attuali (la percentuale di richieste errate nell'intervallo temporale) e il tasso di errori sostenibili per lo SLO. Il tasso di errore sostenibile è la frequenza con cui lo SLO viene soddisfatto esattamente.

I valori in questa serie temporale possono essere compresi tra 0 e infinito:

  • Il valore 1 indica che il servizio presenta il tasso di errore ideale: né troppo rischioso né troppo conservativo.
  • Un valore maggiore di uno significa che il tasso di errore supera il tasso sostenibile. Più alto è il valore, prima lo SLO non risulta conforme.
  • Un valore inferiore a uno indica che il tasso di errore attuale è inferiore al tasso sostenibile.

Ti consigliamo di utilizzare due criteri di avviso per monitorare la frequenza di combustione: un criterio di burn rate veloce per avvisarti di picchi nella frequenza di burn rate e un criterio di combustione lenta per avvisarti di aumenti graduali.

Puoi creare e modificare i criteri di avviso basati su questo selettore di serie temporali utilizzando l'API o la console Google Cloud.

Tutti i criteri di avviso basati su SLO creati utilizzando la console Google Cloud utilizzano questo selettore per recuperare i dati dello SLO.

select_slo_health

Sintassi: select_slo_health(SLO_NAME)

La serie temporale "Stato dello SLO" risponde alla domanda "Durante un determinato periodo di allineamento, qual è stato il rapporto tra richieste soddisfacenti e richieste totali?". Lo SLI del servizio definisce cosa viene considerato come una richiesta valida. Per ulteriori informazioni sugli SLI, consulta la Panoramica.

Questa serie temporale misura le prestazioni del servizio: se ogni richiesta al servizio è corretta, i punti dati in questa serie temporale hanno il valore 1. Con l'aumento del numero di richieste errate, i valori dei punti dati diminuiscono.

select_slo_compliance

Sintassi: select_slo_compliance(SLO_NAME)

La serie temporale "Conformità SLO" risponde alla domanda: "Qual è il rapporto tra unità buone e unità totali dall'inizio del periodo di conformità?" Lo SLO definisce il periodo di conformità come una finestra temporale continuativa o un intervallo di tempo di calendario. L'unità può essere una richiesta o una finestra temporale. Per maggiori informazioni, consulta Conformità negli SLO basati su richieste e finestre.

Questa serie temporale offre un quadro generale del livello di efficacia del servizio rispetto allo SLO. Non produce un segnale di urgenza operativa.

Non utilizzare questo selettore di serie temporali nei criteri di avviso.

select_slo_budget

Sintassi: select_slo_budget(SLO_NAME)

La serie temporale "Budget SLO" risponde alla domanda "Quanto del budget di errore è rimasto al momento della misurazione?". Il budget di errore può essere misurato in richieste o minuti e la quantità rimanente viene calcolata a seconda che il periodo di conformità sia misurato nel tempo di calendario o come finestra continuativa. Per saperne di più, consulta Budget di errore.

Questa serie temporale misura il rischio nell'affidabilità di un servizio. Se il budget di errore diventa inferiore a zero, potrebbe non essere possibile soddisfare lo SLO per il periodo corrente. Un mancato rispetto dello SLO potrebbe avere conseguenze reali per l'ambiente di produzione di un'organizzazione, a seconda di come l'organizzazione regola l'affidabilità.

Non utilizzare questo selettore di serie temporali nei criteri di avviso.

select_slo_budget_fraction

Sintassi: select_slo_budget_fraction(SLO_NAME)

La serie temporale "Frazione di budget SLO" risponde alla domanda: "Quanto rimane il budget di errore, in frazione da infinito negativo a uno, in questo momento?"

Non utilizzare questo selettore di serie temporali nei criteri di avviso.

select_slo_budget_total

Sintassi: select_slo_budget_total(SLO_NAME)

La serie temporale "Budget totale SLO" risponde alla domanda: "Qual è il budget di errore totale (in richieste o minuti) che si prevede sia disponibile in questo momento, in base al comportamento del servizio dall'inizio del periodo di conformità?" Lo SLO definisce il periodo di conformità come una finestra temporale continuativa o un intervallo di tempo di calendario.

Non utilizzare questo selettore di serie temporali nei criteri di avviso.

select_slo_counts

Sintassi: select_slo_counts(SLO_NAME)

La serie temporale "Il conteggio dello SLO" risponde alla domanda "Durante un determinato periodo di allineamento, qual è il numero di richieste valide e non valide?". Questo selettore fornisce una serie temporale che registra lo stato generale ed è adatto all'importazione in sistemi di archiviazione a lungo termine.

Non utilizzare questo selettore di serie temporali nei criteri di avviso.