Ajouter des notifications par e-mail et système pour les événements de tâches

Vous pouvez monitorer les exécutions d’un travail et les tâches faisant partie d’un travail en configurant des notifications lorsqu’une exécution démarre, se termine correctement, échoue ou que sa durée dépasse un seuil configuré. Les notifications peuvent être envoyées à une ou plusieurs adresses e-mail ou destinations système, telles que Slack, Microsoft Teams, PagerDuty ou tout service basé sur un webhook.

Configurer des notifications système

Remarque

  • Pour chaque travail ou tâche, vous pouvez configurer un maximum de trois destinations système pour chaque type d’événement de notification.
  • Un administrateur doit configurer les destinations du système. Les destinations système sont configurées en sélectionnant Créer une nouvelle destination dans la boîte de dialogue Modifier les notifications système ou la page des paramètres d’administration.
  • Les notifications que vous paramétrez pour les tâches ne sont pas envoyées lorsque les tâches ayant échoué sont retentées. Pour recevoir une notification d’échec après chaque tâche ayant échoué (y compris toutes les nouvelles tentatives ayant échoué), utilisez plutôt les notifications de tâche. Pour ajouter des notifications système pour des exécutions de tâches, cliquez sur + Ajouter en regard de Notifications dans le volet des tâches lorsque vous ajoutez ou modifiez une tâche de travail.
  • Un travail qui s’est terminé à l’état Succeeded with failures est considéré comme étant dans un état de réussite. Pour recevoir des alertes pour les travaux qui se terminent dans cet état, vous devez sélectionner Réussite lorsque vous configurez des notifications.

Les notifications système s’intègrent dans des outils de notification connus, notamment :

Pour ajouter une ou plusieurs notifications système quand des exécutions de ce travail ont un événement notifiable, tel qu’un démarrage, une finalisation ou un échec de travail :

  1. Dans le volet Détails du travail de votre travail, cliquez sur Modifier les notifications.
  2. Cliquez sur Ajouter une notification, puis sélectionnez une destination système dans Destination.
  3. Dans Sélectionner une destination système, sélectionnez une destination, puis cochez la case correspondant à chaque type de notification à envoyer vers cette destination.
  4. Pour ajouter une autre destination, cliquez à nouveau sur Ajouter une notification.
  5. Cliquez sur Confirmer.

Important

Il est possible que le contenu des messages de Slack et Microsoft Teams change dans de prochaines versions. Vous ne devez pas implémenter des clients ou un traitement qui dépend du contenu spécifique ou de la mise en forme de ces messages. Si vous exigez une mise en forme ou un schéma spécifique pour des notifications, Azure Databricks recommande de configurer un webhook défini par l’utilisateur.

Configurer des notifications par e-mail

Remarque

  • Les notifications que vous paramétrez pour les tâches ne sont pas envoyées lorsque les tâches ayant échoué sont retentées. Pour recevoir une notification d’échec après chaque tâche ayant échoué (y compris toutes les nouvelles tentatives ayant échoué), utilisez plutôt les notifications de tâche. Pour ajouter des notifications par e-mail pour des exécutions de tâches, cliquez sur + Ajouter en regard de Notifications dans le volet des tâches lorsque vous ajoutez ou modifiez une tâche de travail.
  • Un travail qui s’est terminé à l’état Succeeded with failures est considéré comme étant dans un état de réussite. Pour recevoir des alertes pour les travaux qui se terminent dans cet état, vous devez sélectionner Réussite lorsque vous configurez des notifications.

Pour ajouter une ou plusieurs adresses e-mail à informer lorsque les exécutions de ce travail démarrent, se terminent ou échouent :

  1. Dans le volet Détails du travail de votre travail, cliquez sur Modifier les notifications.
  2. Cliquez sur Ajouter une notification, puis sélectionnez une Adresse e-mail dans Destination.
  3. Entrez une adresse e-mail, puis cliquez sur la case à cocher pour chaque type de notification à envoyer vers cette adresse.
  4. Pour entrer une autre adresse e-mail pour la notification, cliquez à nouveau sur Ajouter une notification.
  5. Cliquez sur Confirmer.

Vous pouvez utiliser des notifications par e-mail à intégrer dans des outils tels que Amazon SES et SNS.

Configurer des notifications pour les travaux lents ou en retard

Si vous avez configuré une durée attendue pour un travail, vous pouvez ajouter une notification par e-mail ou système si le travail dépasse la durée configurée. Pour recevoir une notification pour les travaux qui dépassent le seuil de durée, cliquez sur la case Avertissement de durée lorsque vous ajoutez ou modifiez une notification.

Filtrer des notifications pour les exécutions ignorées ou annulées

Vous pouvez réduire le nombre de notifications envoyées en filtrant les notifications lorsqu’une exécution est ignorée ou annulée. Pour filtrer des notifications, cochez Désactiver les notifications pour les exécutions ignorées ou Désactiver les notifications pour les exécutions annulées lorsque vous ajoutez ou modifiez des notifications par e-mail ou des notifications système.

Remarque

Si vous sélectionnez Désactiver les notifications pour les exécutions ignorées ou Désactiver les notifications pour les exécutions annulées pour un travail, vous ne filtrez pas les notifications configurées pour des tâches de travail. Pour filtrer toutes les notifications pour des exécutions ignorées ou annulées, vous devez également filtrer toutes les notifications au niveau des tâches que vous avez configurées.

Charges utiles des webhooks HTTP

Si vous utilisez un webhook HTTP pour envoyer des notifications, voici des exemples de charges utiles envoyées par Azure Databricks à votre point de terminaison configuré.

Notification d’un événement de démarrage d’une exécution de travail :

{
  "event_type": "jobs.on_start",
  "workspace_id": "your_workspace_id",
  "run": {
    "run_id": "run_id"
  },
  "job": {
    "job_id": "job_id",
    "name": "job_name"
  }
}

Notification d’un événement de démarrage de l’exécution d’une tâche :

{
  "event_type": "jobs.on_start",
  "workspace_id": "your_workspace_id",
  "task": {
    "task_key": "task_name"
  },
  "run": {
    "run_id": "run_id_of_task"
    "parent_run_id": "run_id_of_parent_job_run"
  },
  "job": {
    "job_id": "job_id",
    "name": "job_name"
  }
}

Lors de la configuration des destinations, les webhooks peuvent être configurés pour les types d’événements suivants :

Code d’événement Quand est-il envoyé ?
jobs.on_start Une exécution démarre.
jobs.on_success Une exécution s’arrête et se termine dans un état de réussite ou de réussite avec des échecs.
jobs.on_failure Une exécution s’arrête dans un état d’échec.
jobs.on_duration_warning_threshold_exceeded Une exécution est en cours d’exécution pendant plus que la durée prévue configurée.