Scegliere gli indicatori del livello del servizio (SLI)

Last reviewed 2024-03-29 UTC

Questo documento nel framework dell'architettura Google Cloud descrive come scegliere indicatori del livello del servizio (SLI) appropriati per il tuo servizio. Questo documento si basa sui concetti definiti in Componenti degli SLO.

Le metriche sono necessarie per determinare se gli obiettivi del livello di servizio (SLO) vengono raggiunti. Puoi definire queste metriche come SLI. Ogni SLI è la misurazione di un aspetto specifico del servizio, come tempo di risposta, disponibilità o percentuale di successo.

Gli SLO includono uno o più SLI e sono idealmente basati su percorsi dell'utente critici (CUJ). Per CUJ si intende un insieme specifico di interazioni o percorsi che un utente intraprende per raggiungere il proprio obiettivo su un sito web. Pensate a un cliente che fa acquisti su un servizio di e-commerce. Il cliente esegue l'accesso, cerca un prodotto, aggiunge l'articolo a un carrello, va alla pagina di pagamento ed effettua il pagamento. I CUJ identificano i diversi modi per aiutare gli utenti a completare le attività il più rapidamente possibile.

Quando scegli gli SLI, devi considerare le metriche appropriate per il tuo servizio, i vari tipi di metriche che puoi utilizzare, la qualità della metrica e il numero corretto di metriche necessarie.

Scegliere gli SLI appropriati per il tipo di servizio

Esistono molti tipi di servizi. La seguente tabella elenca i tipi di servizi comuni e fornisce esempi di SLI per ciascuno. Alcuni SLI sono applicabili a più tipi di servizi. Se uno SLI viene visualizzato più volte nella tabella, solo la prima istanza SLI fornisce una definizione. Ricorda che gli SLI sono spesso espressi dal numero di "nove" nella metrica.

Tipo di servizio SLI tipici
Sistemi di pubblicazione
  • Disponibilità: la percentuale di servizio utilizzabile. La disponibilità è definita come frazione delle richieste andate a buon fine divisa per il numero totale di richieste ed espressa come percentuale, ad esempio il 99,9%.
  • Latenza: la velocità con cui viene soddisfatta una determinata percentuale di richieste. Ad esempio, 99° percentile a 300 ms.
  • Qualità: la misura in cui il contenuto nella risposta a una richiesta si discosta dal contenuto ideale della risposta. ad esempio una scala da 0% a 100%.
Sistemi di trattamento dati
  • Copertura: la quantità di dati elaborati, espressa come frazione. ad esempio 95%.
  • Correttezza: la frazione dei dati di output ritenuta corretta. ad esempio 99, 99%.
  • Aggiornamento: l'aggiornamento dei dati di origine o dei dati di output aggregati. Ad esempio, i dati sono stati aggiornati 20 minuti fa.
  • Velocità effettiva: la quantità di dati elaborati. Ad esempio, 500 MiB al secondo o 1000 richieste al secondo.
Sistemi di archiviazione
  • Durabilità: la probabilità che i dati scritti nel sistema siano accessibili in futuro. ad esempio 99, 9999%.
  • Tempo per il primo byte (TTFB): il tempo necessario per inviare e ricevere il primo byte di una pagina.
  • Disponibilità BLOB: il rapporto tra le richieste dei clienti che restituiscono una risposta di errore non del server e il numero totale di richieste dei clienti.
  • Velocità effettiva
  • Latenza
Sistemi di richiesta di guida
  • Disponibilità
  • Latenza
  • Qualità
Sistemi di esecuzione pianificati
  • Disallineamento: la proporzione di esecuzioni che iniziano entro una finestra accettabile dell'ora di inizio prevista.
  • Esecuzione: il tempo necessario per il completamento di un job. Per una determinata esecuzione, una modalità di errore comune prevede che la durata effettiva superi la durata pianificata.

Valutare diversi tipi di metriche

Oltre a scegliere lo SLI appropriato per il tuo servizio, devi stabilire il tipo di metrica da utilizzare per lo SLI. Gli SLI elencati nella sezione precedente tendevano a essere uno dei seguenti tipi:

  • Contatore: questo tipo di metrica può aumentare, ma non diminuire. Ad esempio, il numero di errori che si sono verificati fino a un determinato punto di misurazione.
  • Misuratore: questo tipo di metrica può aumentare o diminuire. Ad esempio, il valore effettivo di una parte misurabile del sistema (come la lunghezza della coda).
  • Distribuzione (istogramma): il numero di eventi che costituiscono un determinato segmento di misurazione per un determinato periodo di tempo. Ad esempio, puoi misurare quante richieste impiegano 0-10 ms per essere completate, quante impiegano 11-30 ms e quante ne impiegano 31-100 ms. Il risultato è un conteggio per ogni bucket, ad esempio [0-10: 50], [11-30: 220] e [31-100: 1103].

Per ulteriori informazioni su questi tipi, consulta la documentazione relativa al progetto Prometheus e la pagina relativa ai tipi di valori e di metriche in Cloud Monitoring.

Considera la qualità della metrica

Non tutte le metriche sono utili. Oltre a un rapporto tra gli eventi andati a buon fine e gli eventi totali, devi determinare se una metrica è uno SLI adatto alle tue esigenze. Per effettuare questa valutazione, considera le seguenti caratteristiche di una buona metrica:

  • Le metriche sono direttamente correlate alla soddisfazione degli utenti. Gli utenti sono insoddisfatti quando un servizio non si comporta come previsto, ad esempio se è lento, impreciso o non funziona del tutto. Convalida qualsiasi SLO in base a queste metriche confrontando lo SLI con altri indicatori di soddisfazione degli utenti. Questo confronto include dati come il numero di ticket di reclamo dei clienti, il volume di chiamate di assistenza e il sentiment sui social media. Per scoprire di più, consulta Miglioramento continuo degli obiettivi SLO.

    Se la tua metrica non è in linea con questi altri indicatori di soddisfazione degli utenti, potrebbe non essere uno SLI valido.

  • Il deterioramento delle metriche è correlato alle interruzioni. Qualsiasi metrica che segnali buoni risultati di servizio durante un'interruzione è chiaramente la metrica sbagliata per uno SLI. Al contrario, anche una metrica che non funziona durante il normale funzionamento è problematica

  • La metrica fornisce un buon rapporto segnale-rumore. Ignora qualsiasi metrica che genera un numero elevato di falsi negativi o falsi positivi.

  • La metrica scala in modo monotonico e lineare in base alla soddisfazione dei clienti. In breve, questa metrica migliora anche la soddisfazione dei clienti.

Seleziona il numero corretto di metriche

Un singolo servizio può avere più SLI, specialmente se il servizio esegue tipi di lavoro diversi o serve tipi diversi di utenti. È meglio scegliere le metriche appropriate per ogni tipo.

Al contrario, alcuni servizi eseguono tipi di attività simili, direttamente comparabili. Ad esempio, gli utenti che visualizzano pagine diverse sul tuo sito (come la home page, le sottocategorie e l'elenco dei primi 10). Anziché sviluppare uno SLI separato per ciascuna di queste azioni, combinale in un'unica categoria SLI, ad esempio servizi di navigazione.

Le aspettative dei tuoi utenti non sono molto diverse da un'azione di una categoria simile. La loro felicità è quantificabile dalla risposta alla domanda: "Ho visto rapidamente una pagina intera di articoli?".

Utilizza il minor numero possibile di SLI per rappresentare con precisione le tolleranze del servizio. Come guida generale, imposta da due a sei SLI. Con un numero insufficiente di SLI, potresti perderti indicatori preziosi. Troppi dati e il tuo team di assistenza ha a portata di mano troppi dati con pochi vantaggi aggiuntivi. Gli SLI dovrebbero semplificare la comprensione dello stato della produzione e fornire un senso di copertura, non sopraffarti (o sottooccuparti).

Che cosa succede dopo?