Options de notification

Cette page répertorie les types de canaux de notification compatibles et explique comment les configurer à l'aide de Google Cloud Console :

Pour configurer un canal de notification à l'aide de Google Cloud Console, procédez comme suit :

  1. Dans Cloud Console, sélectionnez Monitoring :

    Accéder à Monitoring

  2. Dans le volet de navigation Monitoring, cliquez sur Alertes.

  3. Cliquez sur Modifier les canaux de notification. Le tableau de bord des canaux de notification contient une section pour chaque type de canal de notification. Sous l'en-tête de la section se trouve la liste de toutes les configurations pour ce type :

    • Pour modifier une entrée, cliquez sur Modifier . Cliquez sur Enregistrer une fois les modifications effectuées.
    • Pour supprimer une entrée, cliquez sur Supprimer . Cliquez sur Copier dans la boîte de dialogue de confirmation.
  4. Pour ajouter une entrée, suivez les instructions correspondant au type de notification dans le tableau suivant :

Email

Pour ajouter un e-mail, accédez à la section E-mail, cliquez sur Nouveau, puis suivez les instructions.

Si vous créez une règle d'alerte et que vous sélectionnez E-mail dans la section Notifications, saisissez votre adresse e-mail. Si vous utilisez une adresse e-mail de groupe, configurez le groupe pour qu'il accepte les messages provenant de alerts@stackdriver.com et de alerting-noreply@google.com. Notez que l'adresse stackdriver.com est en cours de suppression.

Vous pouvez configurer les canaux de notification par e-mail à la demande, mais en les créant à l'avance vous avez également la possibilité de configurer un nom d'affichage descriptif, tel que "Alias de l'équipe E-commerce".

Application mobile Google Cloud Console

Utilisez l'application mobile Google Cloud Console pour surveiller vos ressources Cloud Console et consulter les informations de Monitoring où que vous soyez.

Pour configurer votre appareil mobile afin de recevoir des notifications de Monitoring, procédez comme suit :

  1. Installez l'application mobile Google Cloud Console depuis la plate-forme de téléchargement d'applications de votre appareil mobile.
  2. Dans l'application mobile Google Cloud Console : sélectionnez le menu Paramètres afin de configurer l'application pour votre espace de travail. Vos ressources Cloud Console s'affichent.
  3. Dans la section Appareils mobiles, cliquez sur Nouveau, puis suivez les instructions.

Au bout de quelques minutes, votre appareil mobile sera répertorié sous Appareils mobiles.

Lorsque vous créez une règle d'alerte, sélectionnez Google Cloud Console (mobile) dans la section Notifications, puis choisissez votre appareil mobile dans la liste.

PagerDuty

L'intégration avec PagerDuty permet la résolution d'incidents unidirectionnelle ou bidirectionnelle avec Monitoring.

Pour configurer les notifications PagerDuty, procédez comme suit :

  1. Dans PagerDuty : créez un compte PagerDuty sur le site PagerDuty. Vous pouvez également configurer PagerDuty Sync pour une synchronisation bidirectionnelle avec Monitoring. Pour en savoir plus, consultez le guide d'intégration de Stackdriver de PagerDuty.
  2. Dans la section PagerDuty, cliquez sur Nouveau.
  3. Saisissez le nom du service et la clé du service.
  4. Cliquez sur Save.

Lorsque vous créez une règle d'alerte, sélectionnez PagerDuty dans la section Notifications et choisissez votre configuration PagerDuty.

 Dans ce document, les captures d'écran de Stackdriver proviennent d'une version antérieure, mais les informations restent correctes.

SMS

Pour configurer les notifications par SMS, procédez comme suit :

  1. Dans la section SMS, cliquez sur Nouveau, puis suivez les instructions.
  2. Cliquez sur Save.

Lorsque vous configurez votre règle d'alerte, sélectionnez le type de notification SMS et choisissez un numéro de téléphone validé dans la liste.

Slack

L'intégration de Monitoring avec Slack permet à vos règles d'alerte de publier des données sur un canal Slack lorsqu'un incident est créé. Pour configurer les notifications Slack, procédez comme suit :

  1. Dans Slack : créez un canal Slack sur le site Slack. Enregistrez l'URL du canal.
  2. Dans la console Google Cloud, sélectionnez Monitoring :

    Accéder à Monitoring

  3. Cliquez sur Alertes, puis sur Modifier les canaux de notification.

  4. Dans la section Slack, cliquez sur Nouveau. Vous accédez alors à la page de connexion Slack :

    1. Saisissez l'URL de votre espace de travail Slack.
    2. Cliquez sur Autoriser pour autoriser Google Cloud Monitoring à accéder à votre espace de travail Slack.

    Lorsque vous créez une règle d'alerte, sélectionnez Slack dans la section Notifications et choisissez votre configuration Slack.

Webhook

Pour configurer les notifications par webhook, procédez comme suit :

  1. Gestionnaire de webhooks : identifiez l'URL du point de terminaison qui recevra les données de webhooks de Monitoring.
  2. Dans la section Webhooks, cliquez sur Nouveau, puis suivez les instructions.
  3. Cliquez sur Save.

Lorsque vous créez une règle d'alerte, sélectionnez Webhook dans la section Notifications et choisissez votre configuration Webhook.

Exemple de paquet JSON

La forme du paquet JSON permettant de créer un événement est la suivante :

  {
        "incident": {
          "incident_id": "f2e08c333dc64cb09f75eaab355393bz",
          "resource_id": "i-4a266a2d",
          "resource_name": "webserver-85",
          "state": "open",
          "started_at": 1385085727,
          "ended_at": null,
          "policy_name": "Webserver Health",
          "condition_name": "CPU usage",
          "url": "https://console.cloud.google.com/monitoring/alerting/incidents?project=PROJECT_ID",
          "summary": "CPU for webserver-85 is above the threshold of 1% with a value of 28.5%"
        },
        "version": 1.1
      }
    

Authentification de base

En plus de la requête Webhook envoyée par Cloud Monitoring, l'authentification de base utilise la spécification HTTP pour le nom d'utilisateur et le mot de passe. Cloud Monitoring exige que votre serveur renvoie une réponse 401 avec l'en-tête WWW-Authenticate approprié. Pour plus d'informations sur l'authentification de base, consultez les ressources suivantes :

Authentification par jeton

L'authentification par jeton nécessite un paramètre "querystring" dans l'URL de point de terminaison et une clé considérée par le serveur comme étant secrète entre elle et Monitoring. Vous trouverez ci-dessous un exemple d'URL incluant un jeton :

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

Si Monitoring envoie un incident à l'URL de point de terminaison, votre serveur peut valider le paramètre joint. Cette méthode d'authentification est plus efficace lorsqu'elle est utilisée avec SSL/TLS pour chiffrer la requête HTTP, car elle empêche les espions de découvrir le jeton.

Pour obtenir un exemple de serveur en Python, consultez exemple de serveur.

Pub/Sub

Pour envoyer des notifications à un sujet Pub/Sub, procédez comme suit :

  1. Créez un sujet Pub/Sub, comme décrit dans la section Créer un sujet, si vous n'en possédez pas encore un. Le sujet doit exister avant de pouvoir être utilisé comme canal de notification. La commande suivante crée un sujet nommé notificationTopic.

    gcloud pubsub topics create notificationTopic
  2. Créez un canal de notification qui utilise le sujet. Vous devez utiliser l'API Monitoring ou l'outil de ligne de commande gcloud pour créer ce canal. Pour plus d'informations et des exemples, consultez la section Créer des canaux.

  3. Autorisez le compte de service de notifications à publier sur chaque sujet Pub/Sub que vous utilisez comme canal de notification.

    Lorsque vous créez le premier canal Pub/Sous, Cloud Monitoring crée un compte de service pour l'agent de service de notification Monitoring du projet dans lequel le canal a été créé. Ce compte de service gère l'envoi des notifications aux canaux de notification Pub/Sub dans ce projet.

    Ce compte de service possède un ID dont la structure est la suivante :

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

    Vous pouvez consulter ce compte sur la page IAM, et non sur la page Comptes de service de Google Cloud Console.

    Pour autoriser ce compte à publier sur un sujet, vous devez attribuer au compte de service le rôle IAM pubsub.publisher correspondant au sujet. La commande suivante effectue cette opération pour le sujet 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
        

    Si la commande réussit, elle renvoie un résultat comme celui-ci :

        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
        

    Pour plus d'informations, consultez la page de référence de pubsub topics add-iam-policy-binding.

    Notez que le numéro du projet n'est pas le même que l'ID du projet. Les ID de projet sont généralement des chaînes qui reflètent le nom du projet, telles que my-test-project. Les numéros de projet sont des identifiants numériques uniques. Vous pouvez trouver le nom, l'ID et le numéro du projet sur la page de destination du projet dans Google Cloud Console, ou le récupérer à l'aide de la commande suivante :

        gcloud projects describe [PROJECT_ID] --format="value(project_number)"
        
  4. Ajoutez le canal Pub/Sous à une règle d'alerte en sélectionnant Pub/Sub comme type de canal et un sujet nommé comme canal de notification.