Configurer des alertes et des notifications pour les tâches Dataplex

Cette page explique comment configurer des alertes pour les exécutions de tâches échouées d'une tâche Dataplex.

Pour configurer des alertes, vous pouvez utiliser l'explorateur de journaux de la console Google Cloud ou l'API Monitoring.

Terminologie

  • Délai pour la fermeture automatique de l'incident: vous pouvez fermer automatiquement un incident si aucune entrée de journal correspondante n'est trouvée au cours de cette période.
  • Délai entre les notifications: vous pouvez réduire la fréquence des notifications répétées en définissant un délai entre les mêmes notifications. Les entrées de journal correspondant à un filtre sont ignorées pendant cette période. La durée minimale que vous pouvez définir est de cinq minutes.

Configurer des notifications à l'aide de l'explorateur de journaux

  1. Dans Google Cloud Console, accédez à la page Explorateur de journaux.

    Accéder à l'explorateur de journaux

  2. Cliquez sur le bouton Afficher la requête.

    1. Pour configurer une alerte en cas d'échec de l'exécution d'une tâche Dataplex dans un projet, saisissez la requête suivante:

      severity=ERROR
      resource.type = "dataplex.googleapis.com/Task"
      logName = "projects/PROJECT_NAME/logs/dataplex.googleapis.com%2Fprocess"
      jsonPayload.state = "FAILED"
      
    2. Pour configurer une alerte en cas d'échec de l'exécution d'une tâche Dataplex spécifique dans un projet, saisissez la requête suivante:

      severity=ERROR
      resource.type = "dataplex.googleapis.com/Task"
      resource.labels.task_id = TASK_ID
      logName = "projects/PROJECT_NAME/logs/dataplex.googleapis.com%2Fprocess"
      jsonPayload.state = "FAILED"
      
  3. Cliquez sur Créer une alerte.

  4. Dans le champ Nom de la règle d'alerte, saisissez un nom pour la nouvelle alerte.

  5. Dans le champ Documentation, saisissez la description que vous souhaitez inclure dans la notification. Pour en savoir plus sur le contenu que vous pouvez inclure dans le champ de documentation d'une règle d'alerte, consultez la section Utiliser Markdown et les variables dans les modèles de documentation.

  6. Cliquez sur Suivant.

  7. Choisissez les journaux que vous souhaitez inclure dans l'alerte, puis cliquez sur Suivant.

  8. Définissez le Délai entre les notifications et le Délai pour la fermeture automatique de l'incident, puis cliquez sur Suivant.

  9. (Facultatif) Sélectionnez un canal de notification. Pour en savoir plus sur la configuration des canaux de notification à l'aide de la console Google Cloud, consultez Gérer les canaux de notification.

  10. Cliquez sur Enregistrer.

Configurer des notifications à l'aide de l'API Monitoring

  1. Facultatif: Activez l'API Monitoring et autorisez les utilisateurs à y accéder. Pour en savoir plus, consultez la page Activer l'API Monitoring.
  2. Facultatif: définissez les rôles ou les autorisations nécessaires pour créer une règle d'alerte. Pour en savoir plus, consultez la section Autorisation requise pour créer des règles d'alerte.
  3. Créez un canal de notification à l'aide de la console Google Cloud ou de la Google Cloud CLI.
  4. Récupérez la channel_id :

    gcloud beta monitoring channels list
    
  5. Créez un fichier policy.json avec le contenu suivant pour la stratégie d'alerte basée sur les journaux:

    1. Configurez une alerte en cas d'échec de l'exécution d'une tâche Dataplex dans un projet:

      {
      "displayName": "Alert Using Monitoring API",
      "documentation": {
        "content": "Log-based alert in project PROJECT.",
        "mimeType": "text/markdown"
      },
      
      "conditions": [
        {
          "displayName": "Log match condition: Failed Job Execution",
          "conditionMatchedLog": {
            "filter": "severity=\"ERROR\" resource.type = \"dataplex.googleapis.com/Task\" logName = \"projects/PROJECT_ID/logs/dataplex.googleapis.com%2Fprocess\" jsonPayload.state = \"FAILED\"",
          },
        }
      ],
      "combiner": "OR",
      
      "alertStrategy": {
        "notificationRateLimit": {
          "period": "300s"
        },
        "autoClose": "604800s",
      },
      
      "notificationChannels": [
        "projects/PROJECT_ID/notificationChannels/CHANNEL_ID"
      ]
      }
      
    2. Configurez une alerte pour une exécution de tâche ayant échoué pour une tâche Dataplex spécifique dans un projet:

      {
      "displayName": "Alert Using Monitoring API",
      "documentation": {
        "content": "Log-based alert in project PROJECT.",
        "mimeType": "text/markdown"
      },
      
      "conditions": [
        {
          "displayName": "Log match condition: Failed Job Execution",
          "conditionMatchedLog": {
            "filter": "severity=\"ERROR\" resource.type = \"dataplex.googleapis.com/Task\" logName = \"projects/PROJECT_ID/logs/dataplex.googleapis.com%2Fprocess\" jsonPayload.state = \"FAILED\" resource.labels.task_id = \"TASK_ID\"",
          },
        }
      ],
      "combiner": "OR",
      
      "alertStrategy": {
        "notificationRateLimit": {
          "period": "300s"
        },
        "autoClose": "604800s",
      },
      
      "notificationChannels": [
        "projects/PROJECT_ID/notificationChannels/CHANNEL_ID"
      ]
      }
      
  6. Transmettez le fichier policy.json à la CLI gcloud:

    gcloud alpha monitoring policies create --policy-from-file="policy.json"
    

    Si l'opération réussit, la commande renvoie le nom de ressource de la nouvelle règle. Exemple :

    Created alert policy [projects/PROJECT_ID/alertPolicies/*POLICY_ID*].

Étape suivante