Administra los canales de notificación

En este documento, se enumeran los tipos de canales de notificaciones compatibles disponibles para las políticas de alertas de Cloud Monitoring y se explica cómo configurarlos mediante Google Cloud Console. Un canal de notificación es el mecanismo que Monitoring usa para notificarte que se cumplieron las condiciones de una política de alertas. Por ejemplo, puedes configurar Monitoring para enviar un correo electrónico a un equipo de asistencia al cliente y a fin de publicar un tema de Pub/Sub.

Para configurar los canales de notificaciones mediante la API de Cloud Monitoring, consulta Administra canales de notificaciones.

Para obtener información sobre las notificaciones sobre la política de alertas, consulta las siguientes páginas:

  • Para obtener más información sobre el retraso entre el inicio de un problema y la creación de una alerta, consulta Latencia de las notificaciones.
  • Si deseas obtener información sobre la cantidad de notificaciones generadas para una política de alertas, consulta Notificaciones por incidente.

De forma predeterminada, una política de alertas envía una notificación solo cuando se crea un incidente. Para recibir una notificación cuando se abre el incidente y cuando se cierra, edita la política de alertas y, en la sección de notificaciones, selecciona Notificar sobre el cierre del incidente.

Creación de canales

Para configurar un canal de notificaciones, debes tener una de las siguientes funciones de administración de identidades y accesos en el proyecto de alcance de un permiso de métricas:

  • Editor de NotificationChannel de Monitoring
  • Editor de Monitoring
  • Administrador de Monitoring
  • Editor de proyecto
  • Propietario del proyecto

Para obtener más información sobre estas funciones, consulta Control de acceso.

Cuando creas una política de alertas, puedes seleccionar cualquier canal de notificación configurado y agregarlo a tu política. Puedes configurar de forma previa tus canales de notificaciones o configurarlos como parte del proceso de creación de una política de alertas. Para obtener más información, consulta Crear un canal a pedido.

Para crear un canal de notificación mediante Cloud Console, sigue las instrucciones específicas del canal que se incluyen en la siguiente tabla:

Correo electrónico

Para agregar un canal de notificaciones por correo electrónico, haz lo siguiente:

  1. En Cloud Console, selecciona Monitoring

    Ir a Monitoring

  2. Haz clic en Alertas y, luego, en Editar canales de notificaciones.
  3. En la sección Correo electrónico, haz clic en Agregar nuevo.
  4. Completa el diálogo y haz clic en Guardar.

Puedes crear canales de correos electrónicos durante la creación de una política de alertas. Para obtener más información, consulta Crear un canal a pedido.

Si usas una dirección de correo electrónico del grupo como canal de notificaciones para una política de alertas, configura el grupo a fin de que acepte correos de alerting-noreply@google.com.

Aplicación para dispositivos móviles

Usa la app para dispositivos móviles de Cloud Console a fin de supervisar los recursos de Cloud Console y la información de Monitoring desde cualquier lugar. Las notificaciones de la app para dispositivos móviles de Cloud Console se envían a un dispositivo específico o a un usuario específico:

Lista de canales de notificaciones de la app para dispositivos móviles de Cloud Console.

  • Dispositivo indica que las notificaciones se envían solo al dispositivo específico que creó el canal de notificaciones. Para los canales de notificaciones con alcance de dispositivo, el campo Nombre visible incluye información del dispositivo.
  • Usuario indica que las notificaciones se envían a todos los dispositivos que tienen instalada la app de Cloud Console para dispositivos móviles.

Cloud Monitoring determina el permiso de la notificación cuando se crea el canal. No puedes seleccionar o cambiar el permiso.

A fin de configurar un canal de notificaciones de la app para dispositivos móviles de Cloud Console en un proyecto específico de Google Cloud, haz lo siguiente:

  1. Instala la app de Cloud Console para dispositivos móviles desde la tienda de aplicaciones de tu dispositivo móvil.
  2. Selecciona un proyecto para visualizarlo en la app para dispositivos móviles de Cloud Console.

    Después de seleccionar un proyecto, se produce un intercambio de datos entre la app y el proyecto de Google Cloud seleccionado. Se crea un canal de notificación cuando no existe uno y, después de unos minutos, el canal aparece en la sección Dispositivos móviles de los Canales de notificación..

Si quieres agregar tu dispositivo móvil como canal de notificaciones para una política de alertas, en la sección Notificaciones, selecciona Google Cloud Console (móvil) y, luego, elige tu dispositivo móvil de la lista.

PagerDuty

La integración con PagerDuty permite la sincronización unidireccional o bidireccional con Monitoring. Independientemente de tu configuración, los siguientes enunciados son verdaderos:

  • Si se crea un incidente en Monitoring, se abre un incidente en PagerDuty.
  • No puedes usar PagerDuty para cerrar un incidente en Monitoring.

Si usas la sincronización unidireccional y resuelves el incidente en PagerDuty, el estado del incidente en PagerDuty se separa del estado del incidente en Monitoring. En efecto, si resuelves un incidente en PagerDuty, el incidente se cierra de forma permanente en PagerDuty y no se puede volver a abrir.

Si usas la sincronización bidireccional, Monitoring controla el estado que muestra PagerDuty. Si resuelves el incidente en PagerDuty y está abierto en Monitoring, se vuelve a abrir en PagerDuty.

Para configurar las notificaciones de PagerDuty, sigue estos pasos:

  1. En PagerDuty: crea una cuenta en el sitio de PagerDuty.
  2. Para completar la integración entre PagerDuty y Monitoring, sigue los pasos descritos en la Guía de integración de Stackdriver.
  3. Agrega el canal de notificaciones de PagerDuty:
    1. En Cloud Console, selecciona Monitoring
      Ir a Monitoring
    2. Haz clic en Alertas y, luego, en Editar canales de notificaciones.
    3. En la sección PagerDuty, haz clic en Agregar nuevo.
    4. Ingresa el Display Name (Nombre visible). Este nombre debe coincidir con el nombre proporcionado a PagerDuty cuando agregaste la integración.
    5. Ingresa la Clave de servicio de integración generada por PagerDuty en el campo Clave de servicio.
    6. Haz clic en Guardar.
  4. (Opcional) Si deseas configurar la sincronización bidireccional, haz lo siguiente:
    1. Abre PagerDuty.
    2. Selecciona Configuración, elige Servicios y, luego, elige el nombre del servicio que ingresaste cuando configuraste la integración.
    3. Haz clic en Editar configuración, selecciona Crear incidentes y, luego, borra Crear incidentes y alertas.

Cuando crees una política de alertas, selecciona PagerDuty en la sección Notificaciones y elige tu configuración de PagerDuty.

En este documento, las capturas de pantalla muestran el nombre del producto como “Stackdriver” y están desactualizados. Sin embargo, los pasos que se indican en el documento son precisos.

SMS

Para configurar las notificaciones por SMS, sigue estos pasos:

  1. En Cloud Console, selecciona Monitoring

    Ir a Monitoring

  2. Haz clic en Alertas y, luego, en Editar canales de notificaciones.
  3. En la sección SMS, haz clic en Agregar nuevo.
  4. Completa el diálogo y haz clic en Guardar.

Cuando configures tu política de alertas, selecciona el tipo de notificación SMS y elige un número de teléfono verificado de la lista.

Slack

La integración de Slack con Monitoring permite que tus políticas de alertas realicen publicaciones en un canal de Slack cuando se crea un incidente nuevo. Para configurar las notificaciones de Slack, haz lo siguiente:

  1. En Slack: crea un lugar de trabajo y un canal de Slack en el sitio de Slack. Registra la URL del canal.

  2. En Cloud Console, selecciona Monitoring:

    Ir a Monitoring

  3. Haz clic en Alertas y, luego, en Editar canal de notificaciones.

  4. En la sección Slack, haz clic en Agregar nuevo para abrir la página de acceso de Slack:

    1. Selecciona tu lugar de trabajo de Slack.
    2. Haz clic en Permitir para habilitar el acceso de Google Cloud Monitoring a tu lugar de trabajo de Slack. Esta acción te lleva de vuelta a la página de configuración de Monitoring para tu canal de notificaciones.
    3. Ingresa el nombre del canal de Slack que deseas usar para las notificaciones.
    4. Ingresa un nombre visible para el canal de notificaciones de Slack.
    5. Para probar la conexión entre Cloud Monitoring y el lugar de trabajo de Slack, haz clic en Enviar notificación de prueba (opcional). Si la conexión es exitosa, verás un mensaje This is a test alert notification... en el canal de notificaciones de Slack que especificaste. Revisa el canal de notificaciones para confirmar la recepción.
  5. Si el canal de Slack que deseas usar para las notificaciones es privado, debes invitar de forma manual a la app de Monitoring:

    1. Abre Slack.
    2. Ve al canal que especificaste como tu canal de notificaciones de Monitoring.

    3. Para invitar a la app de Monitoring al canal, ingresa y envía el siguiente mensaje en el canal:

      /invite @Google Cloud Monitoring

      Asegúrate de invitar a la app de Monitoring al canal privado que especificaste cuando creaste el canal de notificaciones en Monitoring. Invitar a la app de Monitoring a canales públicos es opcional.

    Cuando crees una política de alertas, selecciona Slack en la sección Notificaciones y elige tu configuración de Slack.

Webhooks

Para configurar las notificaciones de Webhooks, haz lo siguiente:

  1. El controlador de webhook: Identifica la URL del extremo público para recibir los datos de webhook desde Monitoring.
  2. En Cloud Console, selecciona Monitoring

    Ir a Monitoring

  3. Haz clic en Alertas y, luego, en Editar canales de notificaciones.
  4. En la sección Webhook, haga clic en Agregar nueva.
  5. Completa el diálogo.
  6. Haz clic en Probar conexión para enviar una carga útil de prueba al extremo de Webhook. Puedes ir al extremo receptor para verificar la entrega.
  7. Haz clic en Guardar.

Cuando crees una política de alertas, selecciona Webhook en la sección Notificaciones y elige tu configuración de webhook.

Autenticación básica

Además de la solicitud de webhook enviada por Cloud Monitoring, la autenticación básica usa la especificación HTTP para el nombre de usuario y la contraseña. Cloud Monitoring requiere que tu servidor muestre una respuesta 401 con el encabezado WWW-Authenticate adecuado. Para obtener más información sobre la autenticación básica, consulta lo siguiente:

Autenticación con token

La autenticación de tokens requiere un parámetro de string de consulta en la URL del extremo y una clave que el servidor espera que sea un secreto entre sí y Monitoring. La siguiente es una URL de muestra en la que se incluye un token:

https://www.myserver.com/stackdriver-hook?auth_token=1234-abcd

Si Monitoring publica un incidente en la URL del extremo, tu servidor puede validar el token adjunto. Este método de autenticación es más eficaz cuando se usa con SSL/TLS para encriptar la solicitud HTTP, lo que evita que los espías conozcan el token.

Para ver un servidor de ejemplo en Python, consulta este servidor de muestra.

Política de baja

El esquema de carga útil está sujeto a la política de baja de Google Cloud que se describe en la Sección 1.4(d) de las Condiciones del Servicio de Google Cloud Platform. Ten en cuenta que el esquema no controla los formatos de los valores de campo generados, y estos formatos pueden cambiar sin aviso previo. Por ejemplo, incident.summary, incident.documentation.content y incident.url están destinados a incluir datos relacionados con sus campos, pero el esquema no tiene restricciones para garantizar un análisis preciso de campos. Puedes consumir el valor como un todo y esperar que cumpla con la política de baja, pero no dependas del análisis de los campos generados.

Pub/Sub

En esta sección, se describe cómo configurar los canales de notificaciones de Pub/Sub. Para la redundancia, te recomendamos que crees varios canales de notificaciones. Se recomienda vincular Pub/Sub con la app para dispositivos móviles de Cloud Console, PagerDuty, Webhooks o Slack, ya que Pub/Sub usa un mecanismo de entrega diferente.

Para configurar un canal de notificación de Pub/Sub, haz lo siguiente:

  1. Habilite la API de Pub/Sub y cree un tema
  2. Cómo configurar el canal de notificaciones para un tema
  3. Autoriza una cuenta de servicio
  4. Configura el canal de notificaciones en una política de alertas

Antes de comenzar

Cuando agregas el primer canal de notificación para un proyecto de Google Cloud, Cloud Monitoring crea una cuenta de servicio para ese proyecto. También otorga la función de administrador de servicios de notificación de Monitoring a la cuenta de servicio. Esta cuenta de servicio permite que Monitoring envíe notificaciones a los canales de notificaciones basados en Pub/Sub en este proyecto.

La cuenta de servicio tiene el siguiente formato:

service-PROJECT_NUMBER@gcp-sa-monitoring-notification.iam.gserviceaccount.com

El nombre de la cuenta de servicio de notificaciones incluye un número único de proyecto de Cloud. Puedes encontrar el nombre, el ID y el número del proyecto en el panel del proyecto en Cloud Console, o bien puedes recuperarlos con el siguiente comando:

gcloud projects describe PROJECT_ID --format="value(project_number)"

Puedes ver y editar la cuenta de servicio con Google Cloud Console o la herramienta de línea de comandos de gcloud.

Habilita la API de Pub/Sub y crea un tema

  1. Habilita la API de Pub/Sub para tu proyecto de Cloud:
    Habilita la API de Pub/Sub

  2. Cree un tema de Pub/Sub. Para obtener información sobre cómo crear un tema, consulta Cómo crear un tema. Por ejemplo, para crear un tema llamado notificationTopic mediante la herramienta de línea de comandos de gcloud, ejecuta el siguiente comando:

    gcloud pubsub topics create notificationTopic

A continuación, configura los canales de notificaciones de Pub/Sub.

Configura notificaciones para un tema

Para crear un canal de notificaciones de Pub/Sub, puedes usar la API de Monitoring, la herramienta de línea de comandos de gcloud o Cloud Console. Después de crear el canal de notificaciones, autoriza a la cuenta de servicio de notificaciones a publicar cada tema que uses como canal de notificaciones.

Si quieres obtener información sobre el uso de la API de Monitoring o la herramienta de línea de comandos de gcloud para crear el canal de notificaciones, consulta Crea canales.

Si deseas usar Cloud Console para crear el canal de notificaciones, haz lo siguiente:

  1. En Cloud Console, selecciona Monitoring

    Ir a Monitoring

  2. Haz clic en Alertas y, luego, en Editar canales de notificaciones.
  3. En la sección Pub/Sub, haz clic en Agregar nuevo.

    En el cuadro de diálogo Created Pub/Sub Channel (Canal de Pub/Sub creado), se muestra el nombre de la cuenta de servicio que creó Monitoring.

  4. Autoriza la cuenta de servicio. Tu cuenta de servicio puede publicar todos los temas o temas específicos:

    • Para publicar todos los temas, selecciona Administrar funciones y agrega la función de Publicador de Pub/Sub.

      Después de completar estos pasos para configurar el canal de notificaciones, omite la siguiente sección, que se titula Autoriza la cuenta de servicio, y, luego, continúa con la sección Configura el canal de notificaciones en una política de alertas

    • Para publicar temas específicos, continúa con el siguiente paso y autoriza a la cuenta de servicio a publicar temas específicos después de completar la configuración del canal de notificaciones. Si deseas obtener instrucciones para autorizar la cuenta de servicio, consulta Autoriza la cuenta de servicio.
  5. Ingresa un nombre visible para tu canal y el nombre del tema de Pub/Sub.
  6. Para verificar que el canal esté configurado correctamente, haz clic en Enviar notificación de prueba (opcional).
  7. Selecciona Agregar canal.

A continuación, autorice la cuenta de servicio.

Autorizar cuenta de servicio

La autorización permite que la cuenta de servicio de notificaciones publique cada tema de Pub/Sub que usas como canal de notificaciones. En esta sección, se describe cómo hacer lo siguiente:

  • Autoriza una cuenta de servicio para un tema específico.
  • Autoriza una cuenta de servicio para todos los temas.

Autoriza una cuenta de servicio para un tema específico

Puedes autorizar a una cuenta de servicio para que publique un tema específico mediante Google Cloud Console y la herramienta de línea de comandos de gcloud. En esta sección, se describen ambos enfoques.

Para autorizar tu cuenta de servicio en un tema específico mediante Google Cloud Console, haz lo siguiente:

  1. Ve a la página Temas de Pub/Sub:
    Ir a Temas
  2. Selecciona el tema.
  3. En la pestaña Permisos, selecciona Agregar principal.
  4. En el campo Principal principal, ingresa el nombre de la cuenta de servicio de notificaciones. La cuenta de servicio tiene la siguiente convención de nombres:
    service-PROJECT_NUMBER@gcp-sa-monitoring-notification.iam.gserviceaccount.com
  5. Selecciona la función de publicador de Pub/Sub y, luego, selecciona Guardar.

Si deseas autorizar tu cuenta de servicio para un tema específico mediante la herramienta de línea de comandos de gcloud, otorga la función de IAM pubsub.publisher para el tema a la cuenta de servicio. Por ejemplo, el siguiente comando configura la función de IAM para el tema notificationTopic:

gcloud pubsub topics add-iam-policy-binding \
projects/PROJECT_NUMBER/topics/notificationTopic --role=roles/pubsub.publisher \
--member=serviceAccount:service-PROJECT_NUMBER@gcp-sa-monitoring-notification.iam.gserviceaccount.com
 

Una respuesta a una ejecución correcta del comando add-iam-policy-binding es similar a la siguiente:

 Updated IAM policy for topic [notificationTopic].
 bindings:
 ‐ members:
    ‐ serviceAccount:service-PROJECT_NUMBER@gcp-sa-monitoring-notification.iam.gserviceaccount.com
    role: roles/pubsub.publisher
 etag: BwWcDOIw1Pc=
 version: 1
 

Para obtener más información, consulta la página de referencia de pubsub topics add-iam-policy-binding.

Autoriza una cuenta de servicio para todos los temas

A fin de autorizar tu cuenta de servicio para todos los temas, haz lo siguiente:

  1. Ir a la página IAM:
    Ir a IAM
  2. Selecciona Incluir funciones de Google proporcionadas, como se muestra en la siguiente imagen:
    Selecciona la opción Otorgar funciones proporcionadas por Google.
  3. Busca la cuenta de servicio que tiene el siguiente formato:
    service-PROJECT_NUMBER@gcp-sa-monitoring-notification.iam.gserviceaccount.com

    Vuelve a cargar la página cuando la cuenta de servicio no aparezca en la lista.

  4. Seleccionar Editar para la cuenta de servicio de notificaciones, seleccionaAgregar otra función Luego, agrega la función.Publicador de Pub/Sub ,

A continuación, configura el canal de notificaciones en una política de alertas.

Configure el canal de notificaciones en una política de alertas

Para usar un canal de notificaciones de Pub/Sub en una política de alertas, selecciona Pub/Sub como el tipo de canal y, luego, el tema.

Ejemplo de esquema

Para ver un paquete JSON de ejemplo y el esquema, expande las siguientes secciones.

Política de baja

El esquema de carga útil está sujeto a la política de baja de Google Cloud que se describe en la Sección 1.4(d) de las Condiciones del Servicio de Google Cloud Platform. Ten en cuenta que el esquema no controla los formatos de los valores de campo generados, y estos formatos pueden cambiar sin aviso previo. Por ejemplo, incident.summary, incident.documentation.content y incident.url están destinados a incluir datos relacionados con sus campos, pero el esquema no tiene restricciones para garantizar un análisis preciso de campos. Puedes consumir el valor como un todo y esperar que cumpla con la política de baja, pero no dependas del análisis de los campos generados.

Crear un canal a pedido

Cuando agregas un canal de notificaciones a una política de alertas, debes seleccionar un canal de una lista. Si la lista no contiene un canal de notificación que deseas usar, puedes actualizar los canales de notificación configurados mediante el siguiente proceso:

  1. En el diálogo de notificaciones, haz clic en Administrar canales de notificaciones. Se abrirá la ventana Canales de notificaciones en una nueva pestaña del navegador.
  2. Para agregar un canal de notificaciones nuevo, ubica el tipo de canal, haz clic en Agregar nuevo y, luego, sigue las instrucciones específicas del canal que se encuentran en la tabla anterior.
  3. Regresa a la pestaña original y, en el diálogo de notificaciones, haz clic en Actualizar .

    Cuadro de diálogo de notificaciones en el que se muestran los botones para actualizar y administrar canales.

  4. Selecciona el canal de notificaciones de la lista actualizada.

Edita y borra canales

Para editar o borrar un canal de notificaciones mediante Cloud Console, haz lo siguiente:

  1. En Cloud Console, selecciona Monitoring o haz clic en el siguiente botón:

    Ir a Monitoring

  2. En el panel de navegación de Monitoring, haga clic en Alertas.

  3. Haz clic en Editar canales de notificaciones.

    El panel Canales de notificaciones contiene una sección para cada tipo de canal de notificaciones. En cada sección se muestran todas las configuraciones para ese tipo:

    • Para modificar una entrada, haz clic en Editar . Haz clic en Guardar una vez que se hayan completado los cambios.
    • Para borrar una entrada, haz clic en Borrar . Haz clic en Borrar en el cuadro de diálogo de confirmación.
.