Instrucciones y requisitos de configuración del lab
Protege tu cuenta y tu progreso. Usa siempre una ventana de navegador privada y las credenciales del lab para ejecutarlo.

Alertas en Google Cloud

Lab 1 hora 30 minutos universal_currency_alt 5 créditos show_chart Intermedio
info Es posible que este lab incorpore herramientas de IA para facilitar tu aprendizaje.
Este contenido aún no está optimizado para dispositivos móviles.
Para obtener la mejor experiencia, visítanos en una computadora de escritorio con un vínculo que te enviaremos por correo electrónico.

Descripción general

En este lab, deberás implementar una aplicación en App Engine y, luego, crear políticas de alertas para recibir notificaciones si no se puede acceder a la aplicación o esta genera errores.

Objetivos

En este lab, aprenderás a realizar las siguientes tareas:

  • Descargar una aplicación de ejemplo desde GitHub
  • Implementar una aplicación en App Engine
  • Crear alertas y verificaciones de tiempo de actividad
  • Opcionalmente, crear una política de alertas con la CLI

Configuración y requisitos

En cada lab, recibirás un proyecto de Google Cloud y un conjunto de recursos nuevos por tiempo limitado y sin costo adicional.

  1. Haz clic en el botón Comenzar lab. Si debes pagar por el lab, se abrirá una ventana emergente para que selecciones tu forma de pago. A la izquierda, se encuentra el panel Detalles del lab, que tiene estos elementos:

    • El botón Abrir la consola de Google Cloud
    • El tiempo restante
    • Las credenciales temporales que debes usar para el lab
    • Otra información para completar el lab, si es necesaria
  2. Haz clic en Abrir la consola de Google Cloud (o haz clic con el botón derecho y selecciona Abrir el vínculo en una ventana de incógnito si ejecutas el navegador Chrome).

    El lab inicia recursos y abre otra pestaña en la que se muestra la página de acceso.

    Sugerencia: Ordena las pestañas en ventanas separadas, una junto a la otra.

    Nota: Si ves el diálogo Elegir una cuenta, haz clic en Usar otra cuenta.
  3. De ser necesario, copia el nombre de usuario a continuación y pégalo en el diálogo Acceder.

    {{{user_0.username | "Username"}}}

    También puedes encontrar el nombre de usuario en el panel Detalles del lab.

  4. Haz clic en Siguiente.

  5. Copia la contraseña que aparece a continuación y pégala en el diálogo Te damos la bienvenida.

    {{{user_0.password | "Password"}}}

    También puedes encontrar la contraseña en el panel Detalles del lab.

  6. Haz clic en Siguiente.

    Importante: Debes usar las credenciales que te proporciona el lab. No uses las credenciales de tu cuenta de Google Cloud. Nota: Usar tu propia cuenta de Google Cloud para este lab podría generar cargos adicionales.
  7. Haga clic para avanzar por las páginas siguientes:

    • Acepta los Términos y Condiciones.
    • No agregues opciones de recuperación o autenticación de dos factores (esta es una cuenta temporal).
    • No te registres para obtener pruebas gratuitas.

Después de un momento, se abrirá la consola de Google Cloud en esta pestaña.

Nota: Para ver un menú con una lista de productos y servicios de Google Cloud, haz clic en el menú de navegación que se encuentra en la parte superior izquierda o escribe el nombre del servicio o producto en el campo Búsqueda. Ícono del menú de navegación

Después de completar los pasos iniciales de acceso, aparecerá el panel del proyecto.

Panel del proyecto de Google Cloud

Activa Google Cloud Shell

Google Cloud Shell es una máquina virtual que cuenta con herramientas para desarrolladores. Ofrece un directorio principal persistente de 5 GB y se ejecuta en Google Cloud.

Google Cloud Shell proporciona acceso de línea de comandos a tus recursos de Google Cloud.

  1. En la consola de Cloud, en la barra de herramientas superior derecha, haz clic en el botón Abrir Cloud Shell.

    Ícono de Cloud Shell destacado

  2. Haz clic en Continuar.

El aprovisionamiento y la conexión al entorno demorarán unos minutos. Cuando te conectes, habrás completado la autenticación, y el proyecto estará configurado con tu PROJECT_ID. Por ejemplo:

ID del proyecto destacado en la terminal de Cloud Shell

gcloud es la herramienta de línea de comandos de Google Cloud. Viene preinstalada en Cloud Shell y es compatible con el completado de línea de comando.

  • Puedes solicitar el nombre de la cuenta activa con este comando:
gcloud auth list

Resultado:

Credentialed accounts: - @.com (active)

Resultado de ejemplo:

Credentialed accounts: - google1623327_student@qwiklabs.net
  • Puedes solicitar el ID del proyecto con este comando:
gcloud config list project

Resultado:

[core] project =

Resultado de ejemplo:

[core] project = qwiklabs-gcp-44776a13dea667a6 Nota: La documentación completa de gcloud está disponible en la guía de descripción general de gcloud CLI .

Ejecuta los siguientes comandos para actualizar el entorno de Python

python3 -m pip install --upgrade pip python3 -m venv myenv source myenv/bin/activate

Tarea 1. Descarga una app de ejemplo desde GitHub y pruébala

  1. Clona el analista de datos de entrenamiento de Google de GitHub en tu entorno de Cloud Shell. El repo contiene una aplicación sencilla que es perfecta para los requisitos del ejercicio.

    git clone --depth 1 https://github.com/GoogleCloudPlatform/training-data-analyst.git
  2. Una vez completada la clonación, cambia a la carpeta deploying-apps-to-gcp en el repositorio que contiene nuestra app de ejemplo:

    cd ~/training-data-analyst/courses/design-process/deploying-apps-to-gcp
  3. Abre el archivo main.py en el editor de Cloud Shell. Si se te solicita, haz clic en Abrir en una nueva ventana. Dedica un momento a explorar la aplicación “Hello GCP” en Python Flask básica.

    edit main.py
  4. Cierra el editor y vuelve a la terminal de Cloud Shell. Haz clic en Abrir terminal en la parte superior derecha para abrir la ventana de terminal. Para probar el programa, carga todas las dependencias de aplicaciones de Python y, luego, inicia la app.

    pip3 install -r requirements.txt python3 main.py
  5. Para ver el programa en ejecución, haz clic en el botón Vista previa en la Web en la barra de herramientas de Cloud Shell y, luego, selecciona Vista previa en el puerto 8080.

Opción de vista previa en la Web “Vista previa en el puerto 8080”.

El programa debería abrir una nueva pestaña del navegador y mostrar el mensaje Hello GCP.

  1. Cierra la pestaña y, luego, vuelve a Cloud Shell. Después, presiona CTRL+C para salir del servidor Flask en ejecución.

Tarea 2. Implementa una aplicación en App Engine

Ahora que sabemos que la aplicación funciona, vamos a implementarla en App Engine.

  1. Cámbiate al editor de código de Cloud Shell (o vuelve a abrirlo). Expande la carpeta training-data-analyst/courses/design-process/deploying-apps-to-gcp en el árbol del explorador de la izquierda.

  2. En el menú File, selecciona New File y asigna el nombre app.yaml al archivo.

  3. Pega lo siguiente en el archivo que acabas de crear:

    runtime: python312
  4. Para asegurarte de que se guarde el archivo, selecciona Archivo > Guardar.

Todos los proyectos requieren la creación de una aplicación de App Engine para poder usarla. Esto se hace una sola vez por proyecto a través de la consola o el comando gcloud app create. De cualquier forma, debes especificar la región en la que quieres que se cree la app.

  1. Ejecuta el siguiente comando en tu terminal de Cloud Shell: Es posible que debas brindar tu autorización para que Cloud Shell realice ese cambio:

    gcloud app create --region={{{project_0.startup_script.app_region|Region}}}
  2. Implementa la aplicación básica en App Engine. El siguiente comando busca la aplicación en el directorio actual. Detecta el archivo app.yaml y lo declara una aplicación de Python, y supone que el resto de la carpeta contiene la aplicación misma, con el punto de partida en main.py. Carga las dependencias, empaqueta la aplicación y también la implementa en App Engine como servicio.

    gcloud app deploy --version=one --quiet
  3. Espera a que termine de implementarse la aplicación.

  4. En el menú de navegación (Ícono del menú de navegación) de la ventana de la consola de Google Cloud, haz clic en Ver todos los productos > Sin servidores > App Engine > Panel.

  5. En la parte superior derecha del panel, verás un vínculo a la aplicación similar al que aparece a continuación.

Vínculo a App Engine

Nota: De forma predeterminada, la URL a App Engine tiene el formato https://project-id.wl.r.appspot.com.
  1. Haz clic en el vínculo para probar la app que acabas de implementar. Debería funcionar exactamente de la misma manera que cuando la ejecutamos en Cloud Shell.

  2. Haz clic en actualizar varias veces, de manera que Google Cloud pueda recopilar una muestra de datos.

Haz clic en Revisar mi progreso para verificar el objetivo. Implementar una aplicación en App Engine

Tarea 3. Examina los registros de App Engine

  1. Vuelve a la consola y, en el lado izquierdo, debajo de App Engine, haz clic en el vínculo Versiones.

  2. Selecciona Registros en la columna Diagnóstico.

Vínculo a Registros destacado en el menú Diagnóstico.

  1. En los registros, puedes ver las solicitudes que acabas de hacer. Si llegas aquí demasiado rápido, espera unos segundos y haz clic en el botón Pasar a los más recientes.

Tarea 4. Crea una alerta de latencia de App Engine

Ahora que la aplicación está en ejecución, vamos a crear una alerta para detectar una latencia inusualmente alta. Para comenzar, vamos a explorar la latencia actual de la aplicación.

Verifica la latencia de la aplicación actual en el Explorador de métricas

  1. En el menú de navegación de la consola de Google Cloud, haz clic en Ver todos los productos y, luego, ve a Observabilidad > Supervisión > Explorador de métricas.

  2. Haz clic en el menú desplegable Selecciona una métrica y desmarca la opción Activa.

  3. Configura la Métrica como Aplicación en GAE > HTTP > Latencia de respuesta. Haz clic en Aplicar. Asegúrate de que la métrica sea de App Engine y no una métrica de verificación de tiempo de actividad. La segunda opción no funcionará, porque actualmente no tenemos una verificación de tiempo de actividad.

  4. En el campo Agregación, haz clic en el menú desplegable y selecciona Percentil 99.

  5. Tómate un momento para examinar el gráfico.

No tenemos muchos datos, pero deberíamos tener los suficientes como para ver una línea en el gráfico que indique el tiempo promedio que le tomó a la aplicación devolver una respuesta en el 99% de las solicitudes más rápidas, eliminando el 1% de las anomalías.

Crea una alerta basada en la misma métrica

Ahora, nuestra aplicación funciona según lo esperado. Es posible que hubiera algunas respuestas lentas cuando se inició la aplicación, pero, en promedio, deberías ver tiempos de respuesta inferiores a 200 ms.

Vamos a crear una alerta para recibir una notificación si se producen tiempos de respuesta que superen los 5 s durante más de un minuto.

  1. En el menú de navegación (Ícono del menú de navegación) de la consola de Google Cloud, haz clic en Ver todos los productos > Observabilidad > Supervisión > Alertas.

  2. En la parte superior, haz clic en Editar canales de notificación y desplázate hacia la sección Correo electrónico. Usa la opción Agregar nuevo para agregar tu dirección de correo electrónico como un canal de notificación válido. Para la opción Display name, elige el nombre que desees y, luego, haz clic en Guardar.

  3. Vuelve a la página principal de Alertas y haz clic en Crear política.

  4. Haz clic en Seleccionar una métrica y desmarca la opción Activa para mostrar la misma página del Explorador de métricas. Una vez más, configura la Métrica como Aplicación en GAE > HTTP > Latencia de respuesta. Haz clic en Aplicar. Configura la ventana progresiva como 1 min y, luego, haz clic en Siguiente.

Notarás la nueva sección de Configuración que se agregó a la ventana del Explorador de métricas estándar en la parte inferior izquierda.

  1. Establece una condición que active una alerta si Cualquier serie temporal tiene incumplimientos de la Posición del umbral que se define como Por encima del umbral y el Valor del umbral que se configura como 8000ms.

  2. Configura el nombre de la condición como Latencia de respuesta [MEDIA] para el 99% superior a 8 s.

  3. Dedica un momento a analizar el gráfico de alertas. Es el mismo gráfico que creamos antes con el Explorador de métricas, pero, esta vez, debería haber una línea de alerta dibujada en 8 s.

  4. Haz clic en Siguiente.

  5. Para Notifications and name, expande el Notification Channel, márcate a ti mismo y haz clic en Aceptar (el canal de notificación que creaste previamente en esta sección).

  6. Dale a la alerta el nombre Hola, demasiado lento y haz clic en Siguiente. Revisa la alerta y haz clic en Crear política.

  7. Actualiza el código de la aplicación para agregar un retraso. Vuelve al editor de código de Cloud Shell. Expande la carpeta training-data-analyst/courses/design-process/deploying-apps-to-gcp en el árbol del explorador de la izquierda.

  8. Haz clic en main.py para abrirlo en el editor. Cerca de la parte superior, en la línea 2, agrega las siguientes sentencias de importación (algunas se utilizarán más adelante en el ejercicio):

    import time import random import json
  9. Reemplaza la función main() actual por la que aparece abajo. Esta nueva versión incluye un comando de suspensión que pausa el código durante 10 s en medio de cada solicitud. Esto estará muy por encima del umbral.

    @app.route("/") def main(): model = {"title": "Hello GCP."} time.sleep(10) return render_template('index.html', model=model)
  10. Ahora, vuelve a implementar la aplicación ejecutando nuevamente lo siguiente:

    gcloud app deploy --version=two --quiet
  11. Espera a que el comando finalice la implementación.

  12. Una vez que el comando se complete, vuelve a Sin servidores > App Engine > Panel y asegúrate de que el vínculo funcione.

  13. Para generar una carga coherente, en Cloud Shell, ingresa el siguiente comando:

    while true; do curl -s https://$DEVSHELL_PROJECT_ID.appspot.com/ | grep -e "<title>" -e "error";sleep .$[( $RANDOM % 10 )]s;done
Nota: Este comando realiza solicitudes a la aplicación de App Engine de forma continua en bucle. El comando grep muestra el título de la página cuando funciona la solicitud. También muestra el error si no funciona. Con cada iteración, el subproceso se suspende una cantidad aleatoria de tiempo, menos de un segundo, pero con el retraso de 10 s en el tiempo de respuesta parecerá mucho más.
  1. Espera y después de unos pocos minutos (en general, alrededor de 5), recibirás un correo electrónico con la notificación de la alerta. Cuando la recibas, vuelve a la terminal de Cloud Shell y usa CTRL + C para detener el bucle del verificador de carga.

  2. En el menú de navegación (Ícono del menú de navegación) de la consola de Google Cloud, haz clic en Ver todos los productos > Observabilidad > Supervisión > Alertas.

Observa que se activó una alerta y se creó un incidente.

  1. Haz clic en el incidente para ver los detalles.

  2. Investiga la página de detalles, desplázate hasta la parte superior y selecciona Confirmar incidente.

  3. Regresa a la página principal de Alertas y observa los cambios.

Haz clic en Revisar mi progreso para verificar el objetivo. Crear una alerta de latencia de App Engine

Tarea 5. (Opcional) Crear una política de alertas con la CLI

La CLI (y la API) de alertas puede ser muy eficaz cuando se aplican políticas de alertas con código o secuencias de comandos.

  1. Vuelve al editor de código de Cloud Shell. Selecciona la carpeta training-data-analyst/courses/design-process/deploying-apps-to-gcp en el árbol del Explorador de la izquierda.

  2. Desde el menú File, selecciona New File y dale el nombre app-engine-error-percent-policy.json.

  3. Crea una política de alertas que divida la cantidad de errores 500 por el número total de respuestas y active una alerta cuando los errores 500 superen el 1%. Pega lo siguiente en el archivo que acabas de crear:

{ "displayName": "HTTP error count exceeds 1 percent for App Engine apps", "combiner": "OR", "conditions": [ { "displayName": "Ratio: HTTP 500s error-response counts / All HTTP response counts", "conditionThreshold": { "filter": "metric.label.response_code>=\"500\" AND metric.label.response_code<\"600\" AND metric.type=\"appengine.googleapis.com/http/server/response_count\" AND resource.type=\"gae_app\"", "aggregations": [ { "alignmentPeriod": "60s", "crossSeriesReducer": "REDUCE_SUM", "groupByFields": [ "project", "resource.label.module_id", "resource.label.version_id" ], "perSeriesAligner": "ALIGN_DELTA" } ], "denominatorFilter": "metric.type=\"appengine.googleapis.com/http/server/response_count\" AND resource.type=\"gae_app\"", "denominatorAggregations": [ { "alignmentPeriod": "60s", "crossSeriesReducer": "REDUCE_SUM", "groupByFields": [ "project", "resource.label.module_id", "resource.label.version_id" ], "perSeriesAligner": "ALIGN_DELTA" } ], "comparison": "COMPARISON_GT", "thresholdValue": 0.01, "duration": "0s", "trigger": { "count": 1 } } } ] }
  1. Guarda el archivo. Asegúrate de estar en la carpeta correcta y de que la política de alertas se haya guardado allí.

    cd ~/training-data-analyst/courses/design-process/deploying-apps-to-gcp ls
  2. Implementa la política de alertas con el siguiente comando:

    gcloud alpha monitoring policies create --policy-from-file="app-engine-error-percent-policy.json"
  3. En el menú de navegación (Ícono del menú de navegación) de la consola de Google Cloud, haz clic en Observabilidad > Supervisión > Alertas. En la sección Políticas, deberías ver la política de alertas que acabas de implementar.

  4. Haz clic en tu política HTTP error… para ver los detalles. Edita el canal de notificaciones de manera que recibas un correo electrónico cuando se active la alerta.

  5. Implementa la aplicación de App Engine con un error aleatorio para probar esta política. Vuelve al editor de código de Cloud Shell. Expande la carpeta training-data-analyst/courses/design-process/deploying-apps-to-gcp en el árbol del explorador de la izquierda.

  6. Abre el archivo main.py en el editor de Cloud Shell.

  7. Reemplaza la función main() actual por la que aparece abajo. Esta nueva función quita nuestro comando de suspensión y utiliza el generador de números aleatorios para devolver un error 500 alrededor del 2% del tiempo. Esto debería ser suficiente para que se active la política de recuento de errores de HTTP.

@app.route("/") def main(): num = random.randrange(49) if num == 0: return json.dumps({"error": 'Error thrown randomly'}), 500 else: model = {"title": "Hello GCP."} return render_template('index.html', model=model)
  1. Vuelve a implementar tu aplicación con el siguiente comando:

    gcloud app deploy --version=two --quiet
  2. Espera a que el comando finalice la implementación.

  3. Una vez que el comando se complete, vuelve a App Engine > Panel y asegúrate de que el vínculo funcione.

  4. En Cloud Shell, vuelve a ejecutar el comando del generador de cargas usado previamente:

    while true; do curl -s https://$DEVSHELL_PROJECT_ID.appspot.com/ | grep -e "<title>" -e "error";sleep .$[( $RANDOM % 10 )]s;done

En Cloud Shell, deberías ver que aparece un error aleatoriamente alrededor del 2% del tiempo. Deja el comando en ejecución.

  1. En el menú de navegación (Ícono del menú de navegación) de la consola de Google Cloud, haz clic en Observabilidad > Supervisión > Alertas y espera unos minutos más. Deberías ver que se activa un incidente de alerta. También deberías recibir un correo electrónico. Esto no sucederá de inmediato, ten un poco de paciencia.

  2. Una vez que recibas el correo electrónico y veas el incidente activado, regresa a Cloud Shell y presiona CTRL + C para detener las solicitudes.

Si esperas unos minutos más, verás que el incidente se resuelve solo y recibirás otro correo electrónico.

  1. Para asegurarte de no recibir ningún correo electrónico una vez que se elimine el proyecto, borra los canales de notificación. Haz clic en la política HTTP error count… para ver los detalles. Haz clic en el vínculo Editar, expande el canal de notificaciones y desmárcate. Desactiva la opción Usar el canal de notificaciones. Guarda los cambios y, luego, borra la política.

  2. Repite el paso anterior para tu política de alertas de verificaciones de tiempo de actividad.

Repaso

En este ejercicio, usaste la consola de Google Cloud y la CLI para crear y probar políticas de alertas. ¡Muy bien!

Finalice su lab

Cuando haya completado el lab, haga clic en Finalizar lab. Google Cloud Skills Boost quitará los recursos que usó y limpiará la cuenta.

Tendrá la oportunidad de calificar su experiencia en el lab. Seleccione la cantidad de estrellas que corresponda, ingrese un comentario y haga clic en Enviar.

La cantidad de estrellas indica lo siguiente:

  • 1 estrella = Muy insatisfecho
  • 2 estrellas = Insatisfecho
  • 3 estrellas = Neutral
  • 4 estrellas = Satisfecho
  • 5 estrellas = Muy satisfecho

Puede cerrar el cuadro de diálogo si no desea proporcionar comentarios.

Para enviar comentarios, sugerencias o correcciones, use la pestaña Asistencia.

Copyright 2025 Google LLC. Todos los derechos reservados. Google y el logotipo de Google son marcas de Google LLC. El resto de los nombres de productos y empresas pueden ser marcas de las respectivas empresas a las que están asociados.

Antes de comenzar

  1. Los labs crean un proyecto de Google Cloud y recursos por un tiempo determinado
  2. .
  3. Los labs tienen un límite de tiempo y no tienen la función de pausa. Si finalizas el lab, deberás reiniciarlo desde el principio.
  4. En la parte superior izquierda de la pantalla, haz clic en Comenzar lab para empezar

Usa la navegación privada

  1. Copia el nombre de usuario y la contraseña proporcionados para el lab
  2. Haz clic en Abrir la consola en modo privado

Accede a la consola

  1. Accede con tus credenciales del lab. Si usas otras credenciales, se generarán errores o se incurrirá en cargos.
  2. Acepta las condiciones y omite la página de recursos de recuperación
  3. No hagas clic en Finalizar lab, a menos que lo hayas terminado o quieras reiniciarlo, ya que se borrará tu trabajo y se quitará el proyecto

Este contenido no está disponible en este momento

Te enviaremos una notificación por correo electrónico cuando esté disponible

¡Genial!

Nos comunicaremos contigo por correo electrónico si está disponible

Un lab a la vez

Confirma para finalizar todos los labs existentes y comenzar este

Usa la navegación privada para ejecutar el lab

Usa una ventana de navegación privada o de Incógnito para ejecutar el lab. Así evitarás cualquier conflicto entre tu cuenta personal y la cuenta de estudiante, lo que podría generar cargos adicionales en tu cuenta personal.