Introducción a la solución de problemas de Cloud Run

En esta página se describen las estrategias habituales para solucionar problemas de Cloud Run. Personalized Service Health publica todos los incidentes de Cloud Run que se derivan de la infraestructura Cloud de Confiance by S3NS subyacente para identificar las interrupciones del servicio Cloud de Confiance by S3NS que afectan a tus proyectos. También deberías configurar alertas sobre eventos de estado del servicio personalizado. Para obtener información sobre los incidentes que afectan a todos los Cloud de Confiance by S3NS servicios, consulta el panel de control Cloud de Confiance by S3NS Estado del servicio.

Consulta las siguientes secciones de la guía de solución de problemas de Cloud Run para resolver problemas relacionados con tu recurso de Cloud Run:

Estrategias para solucionar problemas de Cloud Run

En las siguientes secciones se explica cómo puedes aplicar estrategias generales de solución de problemas para resolver el error. Si sigues teniendo problemas incluso después de seguir los pasos de la guía de solución de problemas, consulta la sección Pasos siguientes.

Generar registros de calidad con Cloud Logging

Es más fácil solucionar problemas de los recursos de Cloud Run si tienes buenos registros para depurar. Debes escribir los registros de forma que se correlacionen los registros de tu contenedor con un registro de solicitudes.

Con los registros correlacionados, puede identificar la solicitud que necesita un análisis más detallado, encontrar el seguimiento de la solicitud y analizar la causa raíz del problema. Para obtener más información sobre cómo escribir registros, consulta el artículo Escribir registros de contenedores.

Investigar instancias con el explorador de registros

Cada registro de solicitudes de Cloud Run contiene un campo instanceId que identifica una instancia que gestiona tu solicitud. En función del valor de simultaneidad que especifiques, una sola instancia puede gestionar varias solicitudes al mismo tiempo.

Si tienes varias instancias que emiten registros a la vez, debes filtrar las instancias para identificar las solicitudes secuenciales que provocan un fallo en una instancia.

Filtrar una instancia te permite depurar problemas de rendimiento específicos relacionados con arranques en frío o latencias aumentadas. Estos problemas también podrían estar vinculados a variables declaradas en un ámbito global, cuando el valor se reutiliza en solicitudes simultáneas posteriores. Por ejemplo, cuando creas un objeto global de grupo de conexiones para la instancia y, a continuación, lo usas en varias solicitudes.

Para filtrar una instancia específica en el Explorador de registros, sigue estos pasos:

  1. En la Cloud de Confiance consola, ve a la página Explorador de registros:

    Ir a Explorador de registros

  2. Selecciona un Cloud de Confiance by S3NS proyecto en la parte superior de la página o crea uno.

  3. Selecciona el recurso Revisión de Cloud Run de un servicio o Tarea de Cloud Run de una tarea.

  4. Despliega una entrada de registro para filtrar por una instancia específica.

  5. Haga clic en el valor del ID de instancia y seleccione Mostrar entradas coincidentes.

Mientras investigas las instancias, puedes usar las investigaciones de Gemini Cloud Assist para obtener más información sobre tus registros. Para obtener más información sobre las diferentes formas de iniciar una investigación con el Explorador de registros, consulta el artículo Solucionar problemas con las investigaciones de Gemini Cloud Assist en la documentación de Gemini.

Resolver latencias de solicitudes inesperadas

Si tienes problemas de latencia, haz lo siguiente:

  1. Comprueba si la latencia afecta a todas las solicitudes de tu recurso de Cloud Run o solo a un pequeño porcentaje. Cloud Run se integra automáticamente con Cloud Monitoring sin necesidad de configurar ni instalar nada.

    Para ver las métricas de latencia de solicitudes concretas, sigue estos pasos:

    1. En la Cloud de Confiance consola, ve a la página Cloud Run:

      Ir a Cloud Run

    2. Selecciona un servicio o un trabajo de las listas disponibles en el menú de navegación de la izquierda.

    3. Haz clic en la pestaña MÉTRICAS para mostrar el panel de control Latencias de solicitudes.

    Para ver las métricas de latencia en Cloud Monitoring, selecciona en la lista Métricas: Revisión de Cloud Run > Request_latencies > Latencia de las solicitudes.

    Para ver una lista de todas las métricas de Cloud Run disponibles y obtener información más detallada, consulta las Cloud de Confiance by S3NS métricas de Cloud Monitoring.

  2. Identifica la solicitud con una latencia alta para comprender el origen de la latencia. Puedes usar Cloud Trace o Cloud Logging para saber cuánto ha tardado una solicitud concreta.

    Para identificar las solicitudes con una latencia alta mediante Cloud Logging, aplica el filtro traceSampled=true para correlacionar los registros de Cloud Logging con las trazas de Cloud Trace. Para obtener más información, consulta Integrar con Cloud Logging.

    A veces, las dependencias, como las solicitudes a otros servicios, pueden provocar problemas de latencia. Para identificar estas solicitudes, debes tener un registro explícito dirigido a las solicitudes. Si no generas estos registros, podría parecer que hay un problema de latencia originado en un servicio de Cloud Run.

    Además, debes evaluar los picos de latencia en el contexto del periodo elegido. La importancia de un pico es relativa: un pico grande en una ventana pequeña puede ser insignificante en una ventana más grande, y viceversa. Por lo tanto, el periodo influye significativamente en la interpretación de los datos de latencia.

  3. Prueba a aumentar el número de instancias mínimas para reducir la latencia de las solicitudes entrantes y evitar los arranques en frío. También deberías modificar el código fuente y ajustar la configuración de escalado para limitar el número de conexiones a un servicio de respaldo.

    Para obtener más información, consulta el artículo Optimizar el rendimiento.

Solucionar problemas de conectividad

Si tu servicio de Cloud Run tiene problemas de conectividad, puedes usar estas estrategias y herramientas para diagnosticar el problema:

  • Sidecar PCAP: para hacer un análisis más detallado a nivel de red, despliega un sidecar PCAP junto con tu servicio de Cloud Run. Este contenedor sidecar realiza una captura de paquetes con tcpdump en el mismo espacio de nombres de red. El sidecar se desacopla del contenedor de entrada principal y no requiere ninguna modificación para capturar paquetes. Los sidecars también usan sus propios recursos, lo que evita que tcpdump compita con los recursos que asignas al servicio principal.

  • Pruebas de conectividad e inteligencia de red para revisiones de Cloud Run y funciones de Cloud Run: realiza comprobaciones automatizadas de la ruta de red entre tu recurso de Cloud Run y un endpoint. De esta forma, puedes encontrar errores de configuración que podrían bloquear el tráfico hacia o desde tu recurso de Cloud Run al conectarte a una instancia de VM, una dirección IP o un servicio gestionado por Google.

  • Revisa los registros de tu recurso de Cloud Run: los registros muestran mensajes de error sobre problemas de conexión, como fallos, tiempos de espera o conexiones rechazadas. Estos registros suelen revelar si el problema de conexión se debe a tu aplicación o a la red.

Siguientes pasos

Si no encuentras una solución a tu problema en la documentación de Cloud Run, sigue estos pasos: