Configura una alerta de tiempo de actividad

En este instructivo, se muestra cómo configurar una alerta de tiempo de actividad para la app de Hello World de Python que se ejecuta en el entorno flexible de App Engine mediante Cloud Monitoring. Las alertas de tiempo de actividad te permiten saber cuándo tu app no está entregando tráfico. También puedes configurar alertas de tiempo de actividad para apps que se ejecuten en Compute Engine o Google Kubernetes Engine (GKE).

Objetivos

  • Ejecuta una app de Hello World básica.
  • Crea una verificación de tiempo de actividad que supervise si la aplicación muestra un código de estado HTTP “200”.
  • Crea una alerta que te envíe un mensaje de correo electrónico cuando falle la verificación de tiempo de actividad.
  • Reinicia la app para activar la alerta.

Costos

Monitoring está disponible para los usuarios de la versión beta sin cargo.

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 la consola de Google Cloud, 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 Google Cloud.

  4. En la página del selector de proyectos de la consola de Google Cloud, 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 Google Cloud.

Clona la app de muestra

La app de muestra está disponible en GitHub en GoogleCloudPlatform/getting-started-python.

  1. Clona el repositorio.

    git clone https://github.com/GoogleCloudPlatform/getting-started-python.git
    
  2. Ve al directorio de muestra.

    cd getting-started-python/gce
    
  3. Debido a que la app solo muestra “Hello World!”, no requiere configuración y puedes ejecutarla de inmediato.

    gcloud app deploy
    
  4. Para ver el mensaje devuelto, ingresa la siguiente URL en el navegador:

    https://PROJECT_ID.REGION_ID.r.appspot.com

    Reemplaza lo siguiente:

Configura Cloud Monitoring en tu proyecto

Después de configurar Monitoring e implementar tu app, puedes usar Monitoring para crear una verificación de tiempo de actividad. La verificación hace ping continuo a tu app implementada para garantizar que muestre una respuesta de buen estado.

Para acceder a Cloud Monitoring, sigue estos pasos:
  1. En Cloud Console, selecciona tu proyecto de Google Cloud.
    Ir a Cloud Console
  2. En el panel de navegación, selecciona Monitoring.

Crea una verificación de tiempo de actividad

  1. En Cloud Console, ve a Monitoring.

    Ir a Monitoring

  2. En el panel de navegación, haz clic en Verificaciones de tiempo de actividad y, luego, en Crear una verificación de tiempo de actividad.

  3. Asigna un título, como Check Hello World, a la verificación y, luego, haz clic en Siguiente.

  4. En la sección Destino, debe especificar la verificación de tiempo de actividad que se debe supervisar:

    1. Debido a que implementaste en App Engine, cambia el Tipo de recurso a App Engine en lugar de URL. (URL es para generar una URL personalizada en una instancia de Compute Engine).
    2. Selecciona el servicio que quieres supervisar la verificación de tiempo de actividad.
    3. Deja en blanco el campo predeterminado Ruta de acceso para ir a la página de índice principal.
    4. Deje la opción Checkfrecuencia con la configuración predeterminada de 1 minuto.
    5. Haga clic en Next.
  5. Deja los campos de Validación de respuesta en sus valores predeterminados y haz clic en Siguiente.

  6. En la sección Alerta, debes especificar cómo se te notifica si ocurre una alerta:

    • Asegúrate de que la etiqueta para activar o desactivar esté como Alertas habilitadas.
    • Deja los campos de nombre y duración en sus valores predeterminados.
    • Para agregar un canal de notificación a la política de alertas, en el cuadro de texto etiquetado Canales de notificaciones, haz clic en Menú. Selecciona los canales que quieres agregar y haz clic en Aceptar. Los canales de notificaciones se agrupan alfabéticamente por cada tipo de canal.

      Para agregar una entrada a la lista de casillas de verificación, haz clic en Administrar canales de notificaciones y sigue las instrucciones. Cuando regreses a este cuadro de diálogo, haz clic en Actualizar .

  7. Haga clic en Crear. Cuando la acción de creación se realiza correctamente, se muestra el mensaje Verificar y alerta creada y, luego, se muestra la página del panel Verificaciones de tiempo de actividad.

    En el panel de verificaciones de tiempo de actividad, aparece la nueva verificación de tiempo de actividad. Si haces clic en el nombre de la verificación, abre la vista detallada para esa verificación. En esta vista, se muestran varios gráficos, el porcentaje de tiempo de actividad y la información de configuración, y se enumeran las políticas de alertas configuradas. Para ver una política en particular, haz clic en su nombre.

    También puedes ver la política de alertas desde la página Alertas. En la página de alertas, en el panel Políticas, se muestra un subconjunto de políticas. Para ver una lista de todas las políticas, haz clic en Ver todas las políticas.

Simular una interrupción

Ahora que se creó la verificación de tiempo de actividad, puedes simular una interrupción. Para ello, cambia la app para que responda con un error HTTP 404 Sorry, we can't find that page en lugar de una respuesta HTTP 200 OK.

  1. El siguiente código muestra dónde la app de Hello World muestra solo un mensaje de Hello World" y que el código de estado de la respuesta sea 200 OK de forma predeterminada. Para ver este código en la app de Hello World, usa la función de vista.

    # Copyright 2019 Google LLC All Rights Reserved.
    #
    # Licensed under the Apache License, Version 2.0 (the "License");
    # you may not use this file except in compliance with the License.
    # You may obtain a copy of the License at
    #
    #     http://www.apache.org/licenses/LICENSE-2.0
    #
    # Unless required by applicable law or agreed to in writing, software
    # distributed under the License is distributed on an "AS IS" BASIS,
    # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    # See the License for the specific language governing permissions and
    # limitations under the License.
    
    from flask import Flask
    app = Flask(__name__)
    
    @app.route('/', methods=['GET'])
    def say_hello():
        return "Hello, world!"
    
    if __name__ == '__main__':
        app.run(host='127.0.0.1', port=8080, debug=True)
    
  2. Para hacer que la app de Hello World muestre un código de error HTTP 404, cambia la línea que se muestra; para ello, agrega un valor 404 a la segunda parte del valor de muestra.

    return 'Hello World', 404
  3. Implementa la app nueva que tiene un error intencional:

    gcloud app deploy

    En un plazo de media hora, recibirás un mensaje de correo electrónico que indica que tu verificación de tiempo de actividad falla.

Limpia

Para evitar que se apliquen cargos a tu cuenta de Google Cloud por los recursos usados en este instructivo, borra el proyecto que contiene los recursos o conserva el proyecto y borra los recursos individuales.

La manera más fácil de eliminar la facturación es borrar el proyecto que creaste para el instructivo.

Para borrar el proyecto, haz lo siguiente:

  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.