Supervisa el uso de la API

La mayoría de las API de Cloud envían telemetría detallada sobre el uso de la API. Eso sirve para hacer un seguimiento del consumo total y supervisar el rendimiento. También puede ayudar a descubrir interacciones negativas entre el software y los servicios de Google. Además, te pueden avisar si los servicios de Google Cloud se comportan de manera anormal y acelerar los tiempos de resolución si necesitas asistencia de Google cuando solucionas problemas.

Las métricas que proporcionan estas API son “señales de oro” que usan los ingenieros de confiabilidad de sitios de Google para evaluar el estado de un servicio. Esas métricas son el tráfico general, la tasa de error y la latencia (en varios percentiles). Las métricas que ves son específicas del uso de la API de tu proyecto y no reflejan el uso o rendimiento de otros usuarios.

Puedes ver las métricas de la API en dos lugares: en el Panel de la API o en Stackdriver.

  • El panel de la API te brinda una vista básica del uso con gráficos compilados con anterioridad en cada página de detalles de la API. Cualquier métrica usada en esta página también se publica en Stackdriver.
  • Stackdriver te permite configurar una supervisión robusta para la aplicación si agregas estas métricas a paneles personalizados con una referencia a otras estadísticas disponibles (que incluyen métricas personalizadas enviadas por la aplicación y métricas específicas de servicio proporcionadas por GCP, como información de cola para Pub/Sub o datos de consulta para Spanner) y establecer alertas a fin de advertirte sobre el comportamiento inusual de la aplicación.

Puedes encontrar una referencia detallada de las métricas de la API en la documentación de Stackdriver Monitoring.

Usa el panel de la API

La manera más simple de obtener una vista rápida de las métricas de la API es usar el Panel de la API de Cloud Platform Console. Puedes ver una descripción general de todas las métricas de uso de la API o desglosar el uso de una API específica.

Para ver una descripción general de las métricas de uso en la consola, dirígete a la sección de API y Servicios del proyecto de Google Cloud en el que se muestra el panel principal de la API en forma predeterminada. En esta página, puedes ver todas las API que tienes habilitadas en la actualidad en tu proyecto y los gráficos de descripción general para las métricas siguientes:

  • Tráfico: La cantidad de solicitudes por segundo que realiza el proyecto a todas las API habilitadas
  • Errores: El porcentaje de las solicitudes para las API habilitadas que generaron errores

Si tienes API habilitadas que son compatibles con las métricas de latencia, verás lo siguiente:

  • Latencia mediana: La latencia mediana para las solicitudes

A fin de ver los detalles de uso para una API específica, realiza lo siguiente:

  1. Selecciona la API que quieres ver en la lista de las API del panel principal de la API. La página de descripción general de la API muestra un gráfico de tráfico detallado con un desglose por código de respuesta.
  2. Para obtener información de uso más detallada, selecciona Ver métricas. En forma predeterminada, se muestran los siguientes gráficos compilados con anterioridad, aunque hay más disponibles:

    • Tráfico por código de respuesta
    • Errores por método de API

    Si la API es compatible con las métricas de latencia, también verás lo siguiente:

    • Latencia general en los percentiles 50, 95 y 99
    • Latencia por método de API (mediana)
  3. Si quieres agregar a los gráficos que se muestran, puedes seleccionar gráficos compilados con anterioridad desde el menú desplegable Seleccionar grafos.

Usa Stackdriver

Si usas Stackdriver, puedes profundizar en los datos de la métrica disponibles con el Explorador de métricas a fin de obtener mejores estadísticas del uso de la API. Stackdriver es compatible con una gran variedad de métricas, que puedes combinar con filtros y agregaciones para vistas nuevas y detalladas del rendimiento de la aplicación. Por ejemplo, puedes combinar una métrica de recuento de solicitudes con un filtro en la clase Código de respuesta HTTP a fin de compilar un panel que muestre las tasas de error en el tiempo o puedes mirar la latencia percentil 95 de las solicitudes a la API de Cloud Pub/Sub.

Ir al Explorador de métricas

Para ver las métricas de la API en el Explorador de métricas, selecciona API consumida como el tipo de recurso y luego usa las opciones de agregación y filtro para definir mejor los datos. Una vez que encuentras la información de uso de la API que quieres, puedes usar Stackdriver para crear paneles y alertas personalizadas que te ayudarán a supervisar y a mantener una aplicación robusta. Puedes obtener información sobre cómo hacer esto en las siguientes páginas:

Soluciona problemas con las métricas de la API

Las métricas de la API pueden ser muy útiles si necesitas comunicarte con Google cuando tienes un problema y también podrían indicarte que no es necesario hacerlo. Por ejemplo:

  • Si todas las llamadas a un servicio solo fallan para un ID de credencial, lo más probable es que haya un problema con esa cuenta que puedes solucionar con facilidad sin abrir un ticket.
  • Estás solucionando un problema con la app y notas una correlación entre el rendimiento degradado de la aplicación y un aumento sostenido en la latencia percentil 50 de un servicio fundamental de GCP. Llámanos y cuéntanos sobre esos datos para poder comenzar a trabajar en el problema lo antes posible.
  • Las latencias para un informe de servicio de GCP se ven bien y sin cambios, pero las métricas de la app informan que la latencia en llamadas al servicio es inusualmente alta. Eso indica que hay problemas en la red. Comunícate con tu operador de red (Google, en algunos casos) para iniciar el proceso de depuración.

Recomendaciones

Aunque las métricas de la API son una herramienta muy útil, hay problemas que tienes que considerar a fin de asegurarte de que proporcionen información importante, en particular cuando se configuran alertas según valores de métrica. Las recomendaciones siguientes te ayudarán a aprovechar al máximo los datos de las métricas de la API.

¿La latencia causa problemas?

Algunos servicios son sensibles a la latencia y otros al escalamiento y a la confiabilidad. Algunas API, Cloud Storage o BigQuery, por ejemplo, pueden tener unos segundos de latencia alta sin que los clientes lo noten. Con datos de las métricas de la API, puedes averiguar lo que necesitan los usuarios de un servicio dado.

Busca cambios de la norma

Antes de emitir una alerta en un valor de métrica particular, considera qué es en realidad un comportamiento inusual. Si miras las métricas de la API, puedes ver que los resultados de la latencia para la mayoría de los servicios se encuentran dentro de una distribución normal: una gran concentración y valores atípicos a cada lado. Las métricas ayudan a entender la distribución normal para que puedas diseñar tu app a fin de que funcione bien en la curva de distribución. Las métricas también pueden ayudarte a correlacionar cambios de la distribución con momentos en los que la app no funciona como está previsto y descubrir la causa de un problema. Se espera que el percentil 99 se vea muy diferente que la mediana, lo que no se esperan son los cambios dramáticos en esos percentiles con el paso del tiempo.

También puedes notar que algunos tipos de solicitudes llevan más tiempo que otras. Si el tamaño medio de una foto subida en Google Photos es de 4 MB, pero en general subes archivos RAW de 20 MB, el tiempo promedio de carga de 20 fotos es peor que el de la mayoría de los usuarios, pero sigue siendo tu comportamiento normal.

Eso significa que no es de gran utilidad alertar la primera vez que se detecta una RPC de un segundo o una llamada de 5xx HTTP. En cambio, cuando investigas un Servicio de Google como una causa posible de un problema que experimenta la aplicación, compara los códigos de retorno y las tasas de latencia en el tiempo y busca cambios continuos de la norma relacionados con los problemas observados en la aplicación.

Tasa de tráfico

Las métricas de la API son más útiles cuando tienes un volumen grande de tráfico en la API. Si llamas a un servicio solo de manera intermitente, las métricas de la API no serán válidas de manera estadística y no proporcionarán información de evaluación significativa.

Por ejemplo, si quieres hacer un seguimiento de la latencia percentil de 99.5 de un servicio y solo realizas 100 llamadas por hora, verificar la medición de un período de dos horas solo te daría un dato que representa el percentil de 99.5 que no tiene mucha información sobre el comportamiento normal de la API o de la aplicación. Asegúrate de que la tasa de tráfico, el percentil al que sigues y el período que consideras generen algún dato de interés o los datos de supervisión no serán útiles.

API compatibles

Las API siguientes son compatibles con todas las métricas de uso de la API, incluidas las métricas de latencia. Otras API solo proporcionan métricas de error y tráfico.

¿Te ha resultado útil esta página? Enviar comentarios:

Enviar comentarios sobre...