Questo documento del framework dell'architettura di Google Cloud descrive come scegliere indicatori dei livelli 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 soddisfatti. Queste metriche vengono definite SLI. Ogni SLI è la misurazione di un aspetto specifico del servizio, ad esempio il tempo di risposta, la disponibilità o il tasso di successo.
Gli SLO includono uno o più SLI e, idealmente, si basano su percorsi dell'utente critici (CUJ). I CUJ si riferiscono a un insieme specifico di interazioni utente o percorsi che un utente segue per raggiungere il proprio obiettivo su un sito web. Prendiamo ad esempio un cliente che fa acquisti su un servizio di e-commerce. Il cliente accede, cerca un prodotto, aggiunge l'articolo al carrello, passa alla pagina di pagamento e completa la procedura di pagamento. I CUJ identificano i diversi modi per aiutare gli utenti a completare le attività il più rapidamente possibile.
Quando scegli gli SLI, devi prendere in considerazione 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.
Scegli gli SLI appropriati per il tipo di servizio
Esistono molti tipi di servizi. La tabella seguente elenca i tipi di servizi comuni e fornisce esempi di SLI per ciascuno. Alcuni SLI sono applicabili a più tipi di servizio. Se un SLI compare più volte nella tabella, solo la prima istanza fornisce una definizione. Ricorda che gli SLI sono spesso espressi in base al numero di "nove" nella metrica.
Tipo di servizio | SLI tipici |
---|---|
Sistemi di pubblicazione |
|
Sistemi di elaborazione dati |
|
Sistemi di archiviazione |
|
Sistemi di guida su richiesta |
|
Sistemi di esecuzione pianificata |
|
Valutare diversi tipi di metriche
Oltre a scegliere l'SLI appropriato per il tuo servizio, devi decidere il tipo di metrica da utilizzare per l'SLI. Gli SLI elencati nella sezione precedente tendenzialmente sono di 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.
- Contatore: questo tipo di metrica può aumentare o diminuire. Ad esempio, il valore effettivo di una parte misurabile del sistema (ad esempio la lunghezza della coda).
- Distribuzione (istogramma): il numero di eventi che si trovano in un determinato segmento di misurazione per un determinato periodo di tempo. Ad esempio, misurare quante richieste richiedono da 0 a 10 ms per essere completate, quante richiedono da 11 a 30 ms e quante richiedono da 31 a 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 del progetto Prometheus e la sezione Tipi di valore e tipi di metriche in Cloud Monitoring.
Prendi in considerazione la qualità della metrica
Non tutte le metriche sono utili. Oltre a essere un rapporto tra eventi riusciti e eventi totali, devi determinare se una metrica è un buon SLI per le tue esigenze. Per aiutarti a prendere questa decisione, tieni presente le seguenti caratteristiche di una buona metrica:
Le metriche sono direttamente correlate alla soddisfazione degli utenti. Gli utenti non sono soddisfatti quando un servizio non si comporta come previsto, ad esempio quando è lento, impreciso o non funziona del tutto. Convalida qualsiasi SLO in base a queste metriche confrontando lo SLI con altri indicatori della soddisfazione dell'utente. Questo confronto include dati quali il numero di richieste inviate dai clienti, il volume delle chiamate all'assistenza e il sentiment sui social media. Per scoprire di più, consulta Miglioramento continuo dei target SLO.
Se la metrica non è in linea con questi altri indicatori della soddisfazione degli utenti, potrebbe non essere un buon SLI.
Il peggioramento della metrica è correlato alle interruzioni. Qualsiasi metrica che riporti risultati di servizio positivi durante un'interruzione è chiaramente sbagliata per un SLI. Al contrario, anche una metrica che sembra negativa 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 varia in modo monotono e lineare in base alla soddisfazione del cliente. In parole povere, con il miglioramento della metrica aumenta anche la soddisfazione del cliente.
Seleziona il numero corretto di metriche
Un singolo servizio può avere più SLI, soprattutto se esegue diversi tipi di attività o serve diversi tipi di utenti. È meglio scegliere le metriche appropriate per ogni tipo.
Al contrario, alcuni servizi svolgono tipi di lavoro simili che possono essere direttamente confrontabili. Ad esempio, gli utenti che visualizzano pagine diverse del tuo sito (come la home page, le sottocategorie e l'elenco dei primi 10). Anziché sviluppare un'SLI distinta per ciascuna di queste azioni, combinale in un'unica categoria SLI, ad esempio sfogliare i servizi.
Le aspettative degli utenti non cambiano molto tra le azioni di una categoria simile. La loro soddisfazione è quantificabile dalla risposta alla domanda: "Ho visualizzato rapidamente una pagina completa di articoli?"
Utilizza il minor numero possibile di SLI per rappresentare con precisione le tolleranze del servizio. Come guida generale, consigliamo di avere da due a sei SLI. Se hai un numero troppo ridotto di SLI, potresti perdere indicatori importanti. Se sono troppi, il team di assistenza ha a disposizione troppi dati con un vantaggio minimo. Gli SLI devono semplificare la comprensione dell'integrità della produzione e fornire un'idea della copertura, senza sopraffonderti (o deluderti).
Passaggi successivi
- Leggi l'articolo Misurare gli SL0.
- Dai un'occhiata ad altre risorse SRE:
- Esplora i consigli negli altri pilastri del Framework dell'architettura.
- Per altre architetture di riferimento, diagrammi e best practice, visita il Cloud Architecture Center.