Supervisar el uso de la API

En esta página, se describe cómo usar las métricas de API para realizar un seguimiento y comprender el uso de las APIs de Google y las APIs de Google Cloud.

Las API de Google producen métricas de uso detalladas que pueden ayudarte a hacer lo siguiente:

  • Realizar un seguimiento del uso de las API de Google y comprender su uso.
  • Supervisar el rendimiento de las aplicaciones y las API de Google.
  • Descubre problemas entre tus aplicaciones y las API de Google.

Puede acelerar de forma drástica los tiempos de resolución cuando solucionas problemas o necesitas asistencia técnica de Google.

Las métricas que producen las API de Google son las señales estándar que usan los ingenieros de confiabilidad de sitios de Google para evaluar el estado de un servicio. Estas métricas abarcan los recuentos de solicitudes, las tasas de errores, las latencias totales, las latencias de backend, los tamaños de las solicitudes y los tamaños de respuesta. Para ver las definiciones de las métricas de la API, consulta la documentación de Cloud Monitoring.

Puedes ver las métricas de la API en dos lugares: el panel de la API y Cloud Monitoring. Las métricas que ves son específicas de tu proyecto y no reflejan el estado general del servicio.

Usa el panel de la API

La forma más simple de ver las métricas de tu API es usar el Panel de la API de la consola de Google Cloud. Puedes ver una descripción general de todo el uso de las API o desglosar el uso de una API específica.

Para ver una descripción general del uso de la API, sigue estos pasos:

  1. Visita la sección APIs y servicios de la consola de Cloud. El panel principal de la API se muestra de 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 o acerca de estas en las API habilitadas
    • Errores: El porcentaje de solicitudes a las API habilitadas que generaron errores
    • Latencia mediana: La latencia mediana para las solicitudes a las API habilitadas, si están disponibles.

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 las API. La página de descripción general de las 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. De 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
    • Latencia general en los percentiles 50, 95 y 99
    • Latencia por método de API (mediana)
  3. Si quieres agregar más gráficos, puedes seleccionar gráficos compilados con anterioridad desde el menú desplegable Seleccionar grafos.

Usar Cloud Monitoring

Si usas Cloud Monitoring, 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. Cloud Monitoring es compatible con una amplia variedad de métricas que puedes combinar con filtros y demás para obtener vistas nuevas y detalladas del rendimiento de las aplicaciones. 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.

Para ver las métricas de la API en el Explorador de métricas, selecciona API consumida como el tipo de recurso y, luego, selecciona una de las métricas serviceruntime. Luego, usa el filtro y las opciones de agregación para definir mejor tus datos. Una vez que encuentres la información de uso de la API que deseas, puedes usar Cloud Monitoring para crear alertas y paneles personalizados que te ayudarán a supervisar y mantener una aplicación sólida. Puedes obtener información sobre cómo hacer esto en las siguientes páginas:

Para obtener más información, consulta el Explorador de métricas.

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 admitidas

Todas las API de Google y las de Google Cloud, así como las API compiladas sobre Cloud Endpoints y API Gateway, admiten las métricas de la API. Si eres un consumidor de la API, puedes ver las métricas de la API consumidas en el panel de la API. Si eres un productor de API, puedes ver las métricas de la API producidas en el panel de Endpoints.