Solucionar problemas en la implementación de App Engine Flexible

En este documento, se presentan técnicas para solucionar problemas con las implementaciones de Cloud Endpoints en entornos flexibles de App Engine. Si recibes un error luego de una solicitud a tu API, consulta Solucionar problemas en las respuestas para obtener más información acerca de cómo solucionar el error.

Errores en la implementación

En esta sección, se describe cómo solucionar errores de gcloud app deploy.

Mensaje de error Solución de problemas
No se pudo mejorar el estado de tu implementación en el tiempo asignado, por lo que se revirtió. Si crees que fue un error, intenta ajustar la configuración de app_start_timeout_sec en la sección readiness_check.

Comprueba que tu archivo app.yaml tenga una sección readiness_check con un valor para app_start_timeout_sec. Si no existe, agrega la sección y configura el valor de app_start_timeout_sec en un valor más alto que el predeterminado de 300 segundos. Para obtener más información, consulta la página sobre verificaciones de disponibilidad.

Asegúrate de que estén habilitados en el proyecto todos los servicios de Google Cloud que requieren Endpoints y ESP. Consulta Verifica los servicios obligatorios para obtener más detalles.

Mensajes de error sobre rollout_strategy

Cuando configuras app.yaml antes de implementar, debe agregar la sección endpoints_api_service. El proxy de servicio extensible (ESP) necesita la configuración que especificas en esta sección para obtener la configuración de tu servicio. Debes especificar un ID de configuración en el campo config_id o incluir la opción rollout_strategy: managed, pero no ambos. Esta opción configura el ESP de modo que use la última configuración del servicio implementada. Cuando especificas esta opción, el ESP detecta el cambio y comienza a usarlo automáticamente hasta 5 minutos después de implementar una nueva configuración de servicio. Recomendamos que especifiques esta opción en lugar de un ID de configuración específico para que use el ESP. Por ejemplo:

endpoints_api_service:
  name: example-project-12345.appspot.com
  rollout_strategy: managed

Si la sección endpoints_api_service no incluye la información que ESP necesita para obtener una configuración de servicio, se muestra uno de los siguientes mensajes:

Mensaje de error Solución de problemas
Se prohíbe config_id cuando rollout_strategy está configurado como "managed" No puedes especificar un ID de configuración y rollout_strategy: managed. A menos que tengas una razón para usar un ID de configuración específico, te recomendamos quitar config_id: [YOUR_CONFIG_ID] de app.yaml y volver a ejecutar gcloud app deploy.
Debe especificarse config_id cuando no se especifica rollout_strategy o está configurado como "fixed" Se muestra este mensaje de error cuando app.yaml no incluye rollout_strategy: managed o cuando rollout_strategy está configurado como fixed y no especificaste un ID de configuración. A menos que tengas un motivo para usar un ID de configuración específico, te recomendamos agregar rollout_strategy: managed a la sección endpoints_api_service de app.yaml y volver a implementar gcloud app deploy.

Ve registros en una instancia

Los registros de fallas y del sistema de App Engine proporcionan información sobre los motivos por los que la aplicación no se inicializa o no rinde según lo esperado. Puedes encontrar más información de depuración en el registro de Endpoints.

  1. En la consola de Google Cloud, conecta SSH a tu máquina virtual. Consulta la página sobre cómo conectarse a una instancia para obtener más información.

  2. Usa un lector de texto, como tail:

     tail -f /var/log/nginx/error.log
    

¿Qué sigue?