Organiza tus páginas con colecciones Guarda y categoriza el contenido según tus preferencias.
Guía de inicio rápido: Usa Error Reporting para detectar errores en una app que falla

Revisa la presencia de una app con fallas mediante Error Reporting

Error Reporting proporciona un solo lugar para supervisar las condiciones de error de todos los servicios y apps de un proyecto de Google Cloud y de las aplicaciones de Amazon Elastic Compute Cloud (EC2).

En esta guía, aprenderás a hacer lo siguiente:

  1. Simular un error de un servicio en un proyecto de Cloud

  2. Usar Error Reporting para ver el error y cambiar su estado, de modo que otros miembros de tu equipo sepan que se está abordando el problema

  3. Configurar notificaciones para saber cuándo ocurren nuevos tipos de errores


Si deseas obtener una guía paso a paso para realizar esta tarea directamente en Google Cloud Console, haz clic en Guiarme:

Guiarme


En las siguientes secciones, se explican los mismos pasos que cuando se hace clic en Guiarme.

Antes de comenzar

  1. Accede a tu cuenta de Google Cloud. Si eres nuevo en Google Cloud, crea una cuenta para evaluar el rendimiento de nuestros productos en situaciones reales. Los clientes nuevos también obtienen $300 en créditos gratuitos para ejecutar, probar y, además, implementar cargas de trabajo.
  2. En la página del selector de proyectos de Google Cloud Console, selecciona o crea un proyecto de Google Cloud.

    Ir al selector de proyectos

  3. Asegúrate de que la facturación esté habilitada para tu proyecto de Cloud. Obtén información sobre cómo verificar si la facturación está habilitada en un proyecto.

  4. En la página del selector de proyectos de Google Cloud Console, selecciona o crea un proyecto de Google Cloud.

    Ir al selector de proyectos

  5. Asegúrate de que la facturación esté habilitada para tu proyecto de Cloud. Obtén información sobre cómo verificar si la facturación está habilitada en un proyecto.

  6. Abre Cloud Shell para tu proyecto de Cloud. Mientras se inicia, se muestra el mensaje Conectando.

    Abre Cloud Shell.

Simular un error

  1. Para generar 11 errores de muestra, ejecuta la siguiente secuencia de comandos en Cloud Shell:

      COUNTER=0
      while [  $COUNTER -lt 11 ]; do
          gcloud beta error-reporting events report --service tutorial --service-version v$((COUNTER/10+1)) \
              --message "java.lang.RuntimeException: Error rendering template $COUNTER
                at com.example.TestClass.test(TestClass.java:51)
                at com.example.AnotherClass(AnotherClass.java:25)
                at javax.servlet.http.HttpServlet.service (HttpServlet.java:617)
                at javax.servlet.http.HttpServlet.service (HttpServlet.java:717)"
          if [ $COUNTER -eq 10 ]; then
            echo "All sample errors reported."
          fi
          let COUNTER=COUNTER+1
      done
    

    Cuando la secuencia de comandos termina de generar todos los errores, imprime la siguiente línea:

    All sample errors reported.

Observa los errores en Error Reporting

  1. Ve a Error Reporting

    Ir a Error Reporting

    En el panel de Error Reporting, se muestra un resumen de cada error encontrado y la cantidad de casos de cada uno. Cuando la carga automática está activada, Error Reporting vuelve a cargar automáticamente la lista de errores cada 10 segundos.

    En la columna Casos, se muestra la cantidad de mensajes de cada tipo de error junto con un gráfico de tiempo:

    La interfaz de usuario muestra los casos por lotes de los errores de ejemplo.

  2. Haz clic en el nombre del error para ver la página de detalles de errores, que contiene toda la información disponible sobre un error, incluidos los vínculos al código fuente:

    La interfaz de usuario muestra la página de detalles del error.

Configura las notificaciones

Puedes configurar Error Reporting para que envíe notificaciones cuando surge un tipo de error nuevo. Las notificaciones no se envían cuando hay casos nuevos de errores existentes.

  1. Ve a Error Reporting

    Ir a Error Reporting

  2. Para habilitar las notificaciones por correo electrónico, haz clic en Más y selecciona Activar las notificaciones de errores nuevos para el proyecto en la lista desplegable.

  3. Para generar nuevos tipos de errores, haz clic en Activar Cloud ShellBotón de activar Shell y ejecuta la siguiente secuencia de comandos:

      COUNTER=0
      while [ $COUNTER -lt 3 ]; do
            gcloud beta error-reporting events report --service tutorial --service-version v1 \
                --message "java.lang.ArrayIndexOutOfBoundsException: $COUNTER
                  at com.example.AppController.createUser(AppController.java:42)
                  at com.example.User(User.java:31)
                  at javax.servlet.http.HttpServlet.service (HttpServlet.java:617)
                  at javax.servlet.http.HttpServlet.service (HttpServlet.java:717)"
          if [ $COUNTER -eq 10 ]; then
            echo "All sample errors reported."
          fi
          let COUNTER=COUNTER+1
      done
    

    Cuando la secuencia de comandos termina de generar todos los errores, imprime la siguiente línea:

    All sample errors reported.

  4. Busca en tu correo electrónico un mensaje de “Notificaciones de Stackdriver”.

Genera mensajes de error desde una app de App Engine

Si bien los mensajes de muestra que generaste desde las secuencias de comandos simulan completamente las condiciones de error en Error Reporting, si deseas generar errores desde un servicio real que se ejecuta en tu proyecto de Cloud, sigue los pasos de esta sección.

Implementar una app

Para descargar y también implementar una aplicación en App Engine, haz lo siguiente:

  1. Descarga y configura la aplicación desde el proyecto de GitHub python-docs-samples:

    1. Clona el proyecto en Cloud Shell:

      git clone https://github.com/GoogleCloudPlatform/python-docs-samples
      

      Git muestra un mensaje similar al siguiente:

      git clone https://github.com/GoogleCloudPlatform/python-docs-samples
      Cloning into 'python-docs-samples'...
      
    2. Crea un entorno aislado de Python y actívalo:

      cd python-docs-samples/appengine/standard_python3/hello_world
      virtualenv env -p python3
      source env/bin/activate
      
    3. Instala las dependencias:

      pip install -r requirements.txt
      
  2. Verifica que la aplicación se instale y configure correctamente:

    1. Ejecuta la aplicación:

      python main.py
      
    2. Para ver la aplicación en una página web local, haz clic en el vínculo que se muestra en Cloud Shell. En la página web, se muestra Hello World!.

    3. Para detener la aplicación en ejecución, ingresa Ctrl-C en Cloud Shell.

  3. Sube tu aplicación a App Engine:

    gcloud app deploy
    

    Si se requiere una región de implementación, selecciona una cercana. Cuando se indique, ingresa Y si deseas continuar. Después de unos instantes, se completa la carga.

  4. Observa tu aplicación en el navegador ejecutando el siguiente comando en Cloud Shell:

    gcloud app browse
    

    Si la CLI de Google Cloud no encuentra tu navegador, el comando anterior mostrará un mensaje de error y un vínculo. Haz clic en el vínculo que se muestra. Se muestra el mensaje Hello, World! en el navegador.

Genera un error

Para crear un error que Error Reporting detecte y muestre, haz lo siguiente:

  1. Edita main.py y cambia

    return 'Hello World!
    

    a

    return 'Hello World!' + 1000
    

    Cuando se ejecuta, este cambio genera una excepción TypeError de Python porque es ilegal concatenar una string y un número entero.

  2. Sube la aplicación modificada a App Engine:

    gcloud app deploy
    
  3. Regresa a la pestaña del navegador que contiene la aplicación en ejecución y vuelve a cargar la página. Debido al cambio, en la página se muestra un mensaje de error en lugar de Hello, World!:

    Internal Server Error
    The server encountered an internal error and was unable to complete your
    request. Either the server is overloaded or there is an error in the
    application.
    

    Si no ves este mensaje, espera un minuto y vuelve a cargarla. Es posible que la versión nueva tarde unos minutos para activarse.

Observa el error en Error Reporting

Para ver el error, sigue las instrucciones de la sección anterior Visualiza los errores en Error Reporting.

Realiza una limpieza

Sigue estos pasos para evitar que se apliquen cargos a tu cuenta de Google Cloud por los recursos que usaste en esta página.

  1. En la consola de Google Cloud, ve a la página Administrar recursos.

    Ir a Administrar recursos

  2. En la lista de proyectos, elige el proyecto que quieres borrar y haz clic en Borrar.
  3. En el diálogo, escribe el ID del proyecto y, luego, haz clic en Cerrar para borrar el proyecto.

¿Qué sigue?