Configura una alerta de tiempo de actividad

En este instructivo, se muestra cómo configurar una alerta de tiempo de actividad para la app Hello de World de Python que se ejecuta en el entorno flexible de App Engine mediante Cloud Monitoring. Las alertas de tiempo de actividad te informan cuando tu app no entrega tráfico. También puedes configurar alertas de tiempo de actividad para apps que se ejecutan en Compute Engine o en 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 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. Descubre cómo confirmar que tienes habilitada la facturación en un proyecto.

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 que se muestra, ingresa la siguiente URL en tu navegador:

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

    Reemplaza lo siguiente:

Configura Cloud Monitoring en tu proyecto

Después de configurar Monitoring y de implementar tu app, puedes usar Monitoring para crear una verificación de tiempo de actividad. La verificación hace ping a tu app implementada de forma continua para garantizar que muestre una respuesta en 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. Ingresa un título para la verificación, como Check Hello World, y, luego, haz clic en Next.

  4. En la sección Destino, especifique qué debe supervisar la verificación de tiempo de actividad:

    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 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 Verificar frecuencia en el valor predeterminado de 1 minuto.
    5. Haga clic en Next.
  5. Deja los campos Validación de respuesta en sus valores predeterminados y haz clic en Siguiente.

  6. En la sección Alerta y notificación, especificas 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 notificaciones a la política de alertas, en el cuadro de texto etiquetado Canales de notificaciones, haz clic en Menú. Selecciona los canales que deseas 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 vuelvas a este diálogo, haz clic en Actualizar .

  7. Haga clic en Crear. Cuando la acción de creación se realiza de forma correcta, se muestra el mensaje Check and alert created y, luego, la página 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 si cambias 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 de retorno agregando un valor 404 a la segunda parte del valor que se muestra.

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

    gcloud app deploy

    Dentro de media hora, recibirás un mensaje de correo electrónico que indicará que la verificación del tiempo de actividad está fallando.

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 Cloud Console, 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.