En este documento del framework de la arquitectura de Google Cloud, se describe cómo elegir los indicadores de nivel de servicio (SLI) adecuados para tu servicio. Este documento se basa en los conceptos definidos en Componentes de los SLO.
Las métricas son necesarias para determinar si se cumplen tus objetivos de nivel de servicio (SLO). Debes definir esas métricas como SLI. Cada SLI es la medición de un aspecto específico del servicio, como el tiempo de respuesta, la disponibilidad o la tasa de éxito.
Los SLO incluyen uno o más SLI y, de manera ideal, se basan en recorridos críticos del usuario (CUJ). Los CUJ hacen referencia a un conjunto específico de interacciones o rutas de los usuarios que estos siguen para lograr su objetivo en un sitio web. Considera un cliente que compra en un servicio de comercio electrónico. El cliente accede, busca un producto, agrega el artículo a un carrito, navega a la página de confirmación de compra y finaliza la compra. Los CUJ identifican las diferentes formas de ayudar a los usuarios a completar tareas lo más rápido posible.
Cuando eliges los SLI, debes considerar las métricas que son adecuadas para tu servicio, los diversos tipos de métricas que puedes usar, la calidad de la métrica y la cantidad correcta de métricas necesarias.
Elige los SLI adecuados para tu tipo de servicio
Existen muchos tipos de servicios. En la siguiente tabla, se enumeran los tipos de servicios comunes y se proporcionan ejemplos de SLI para cada uno. Algunos SLI se aplican a varios tipos de servicios. Si un SLI aparece más de una vez en la tabla, solo la primera instancia de SLI proporciona una definición. Recuerda que los SLI a menudo se expresan por la cantidad de “nueves” en la métrica.
Tipo de servicio | SLI típicos |
---|---|
Sistemas de servicio |
|
Sistemas de procesamiento de datos |
|
Sistemas de almacenamiento |
|
Sistemas de control de solicitudes |
|
Sistemas de ejecución programada |
|
Evalúa diferentes tipos de métricas
Además de elegir el SLI adecuado para tu servicio, debes decidir el tipo de métrica que usarás en el SLI. Los SLI enumerados en la sección anterior suelen ser de uno de los siguientes tipos:
- Contador: este tipo de métrica puede aumentar, pero no disminuir. Por ejemplo, la cantidad de errores que se generaron hasta un punto de medición determinado.
- Indicador: este tipo de métrica puede aumentar o disminuir. Por ejemplo, el valor real de una parte medible del sistema (como la longitud de la cola).
- Distribución (histograma): la cantidad de eventos que residen en un segmento de medición determinado durante un período determinado. Por ejemplo, mides cuántas solicitudes tardan de 0 a 10 ms en completarse, cuántas tardan de 11 a 30 ms y cuántas tardan de 31 a 100 ms. El resultado es un recuento de cada bucket, como [0-10: 50], [11-30: 220] y [31-100: 1103].
Para obtener más información sobre estos tipos, consulta la documentación del proyecto de Prometheus y los tipos de valores y clases de métricas en Cloud Monitoring.
Considera la calidad de la métrica
No todas las métricas son útiles. Además de ser una proporción entre los eventos correctos y el total de eventos, debes determinar si una métrica es un SLI adecuado para tus necesidades. Para ayudarte a tomar esa determinación, considera las siguientes características de una buena métrica:
Las métricas se relacionan directamente con la satisfacción del usuario. Los usuarios no están satisfechos cuando un servicio no se comporta como se espera, como cuando el servicio es lento, impreciso o falla por completo. Para validar cualquier SLO basado en estas métricas, compara el SLI con otros indicadores de satisfacción del usuario. En esta comparación, se incluyen datos como la cantidad de tickets de reclamos de los clientes, el volumen de llamadas de asistencia y la opinión en las redes sociales. (Para obtener más información, consulta Mejora continua de los objetivos de SLO).
Si tu métrica no se alinea con estos otros indicadores de satisfacción del usuario, es posible que no sea un SLI adecuado.
El deterioro de la métrica se correlaciona con las interrupciones. Cualquier métrica que informe buenos resultados del servicio durante una interrupción es claramente una métrica incorrecta para un SLI. Por el contrario, una métrica que no se ve bien durante el funcionamiento normal también resulta problemático.
La métrica brinda una buena proporción de la relación señal/ruido. Descarta cualquier métrica que genere una gran cantidad de falsos negativos o falsos positivos.
La métrica escala de forma monótona y lineal con la satisfacción del cliente. En pocas palabras, a medida que la métrica mejora, la satisfacción del cliente también lo hace.
Selecciona la cantidad correcta de métricas
Un solo servicio puede tener varios SLI, en especial si el servicio realiza diferentes tipos de trabajo o entrega a diferentes tipos de usuarios. Es mejor elegir las métricas adecuadas para cada tipo.
Por el contrario, algunos servicios realizan tipos de trabajos similares, que se pueden comparar directamente. Por ejemplo, usuarios que ven diferentes páginas en tu sitio (como la página principal, las subcategorías y la lista de las 10 principales). En lugar de desarrollar un SLI diferente para cada una de estas acciones, combínalos en una sola categoría de SLI, como servicios de navegación.
Las expectativas de tus usuarios no cambian mucho entre las acciones de una categoría similar. Su satisfacción se puede cuantificar a través de la respuesta a esta pregunta: “¿Visualicé una página completa de elementos rápidamente?”.
Usa la menor cantidad de SLI posible para representar con precisión las tolerancias del servicio. Como guía general, debes tener entre dos y seis SLI. Con muy pocos SLI, puedes perder indicadores valiosos. Si hay muchos SLI, tu equipo de asistencia al cliente tendrá demasiados datos con pocos beneficios adicionales. Los SLI deben simplificar la comprensión del estado de la producción y proporcionar una sensación de cobertura, no abrumarte (ni decepcionarte).
Próximos pasos
- Consulta Mide tus SL0.
- Consulta otros recursos de SRE:
- Explora otras categorías en el framework de arquitectura.
- Para obtener más información sobre las arquitecturas de referencia, los diagramas y las prácticas recomendadas, explora Cloud Architecture Center.