Comment puis-je créer une notification SNS qui comprend des informations sur les erreurs pour une activité Data Pipeline ?

Dernière mise à jour : 08/06/2021

Lorsqu'une activité AWS Data Pipeline échoue, je souhaite recevoir une notification d'Amazon Simple Notification Service (Amazon SNS) qui inclut des informations spécifiques, comme l'erreur de trace pile.

Brève description

Créez une rubrique SNS et abonnez-vous, puis configurez une action SnsAlarm afin que celle-ci s'exécute en cas d'échec d'une activité Data Pipeline. Vous pouvez transmettre des champs d'activité, tels que errorStackTrace, à SnsAlarm à l'aide de l'expression #{node.activityfield}. Par exemple :

{
  "role": "DataPipelineDefaultRole",
  "subject": "Failed PipelineId: #{node.@pipelineId} Error: #{node.errorMessage}",
  "message": "Error: #{node.errorStackTrace}",
  "topicArn": "arn:aws:sns:us-east-1:917786601234:DPsqlActivityFail",
  "name": "DefaultActionSNS1",
  "id": "SnsAlarmActionOnfail",
  "type": "SnsAlarm"
},

Résolution

  1. Créez une rubrique SNS et abonnez-vous. Notez l'ARN de la rubrique (par exemple, arn:aws:sns:us-east- 1:111122223333:my-topic). Vous l'utiliserez ultérieurement.
  2. Ouvrez laconsole Data Pipeline.
  3. Sur la page List Pipelines (Liste des pipelines), sélectionnez votre ID de pipeline, puis cliquez sur Edit Pipeline (Modifier le pipeline) pour ouvrir la page Architect (Architecte).
  4. Dans le volet droit, sélectionnez Activities (Activités), puis sélectionnez l'activité pour laquelle vous souhaitez recevoir des notifications (par exemple, SQLActivity).
  5. Dans la liste déroulante Add an optional field (Ajouter un champ facultatif), sélectionnez On Fail (En échec).
  6. Dans la liste On Fail (En échec), sélectionnez Create new: Action (Créer nouvel élément : action). Data Pipeline attribue automatiquement un nom à la nouvelle action, comme DefaultAction1. Vous pouvez changer le nom en modifiant l'action dans la section Others (Autres).
  7. Dans le volet droit, sélectionnez Others (Autres), puis l'action que vous avez créée au cours de l'étape précédente (par exemple, DefaultAction1).
  8. Dans la liste Type, sélectionnez SnsAlarm.
  9. Dans le champ Message, saisissez le message que vous souhaitez recevoir en cas d'échec de l'activité. Vous pouvez inclure n'importe quel champs de l'activité dans le message à l'aide de l'expression #{node.activityfield}. Par exemple, pour recevoir la trace de pile dans la notification SNS, saisissez un message de type « Erreur : #{node.errorStackTrace} ». Pour obtenir plus d'informations sur les champs disponibles pour chaque activité Data Pipeline, consultez Activities (Activités).
  10. Dans le champ Subject (Objet), saisissez l'objet de la notification. L'objet peut également inclure n'importe quel champs de l'activité (par exemple, « Failed PipelineId: #{node.@pipelineId} Error: #{node.errorMessage} »).
  11. Dans le champ Topic Arn (ARN de la rubrique), saisissez l'ARN de votre rubrique SNS (par exemple, arn:aws:sns:us-east-1:111122223333:my-topic).
  12. Sélectionnez Save (Enregistrer). Lorsque vous activez votre pipeline, vous recevrez une notification si l'activité spécifiée échoue.

Cet article vous a-t-il été utile ?


Besoin d'aide pour une question technique ou de facturation ?