Comment puis-je créer une notification SNS comprenant des informations d'erreur pour une activité Data Pipeline ?

Date de la dernière mise à jour : 12/02/2019

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 de pile.

Brève description

Créez une rubrique SNS et abonnez-vous y, puis configurez une action SnsAlarm que celle-ci s'exécute en cas d'échec d'une activité Data Pipeline. Vous pouvez transmettre n’importe quel champ d'activité, comme errorStackTrace et 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 y. Notez l' ARN de la rubrique (par exemple, arn:aws:sns:us-east-1:111122223333:my-topic). Vous l'utiliserez ultérieurement.
  2. Ouvrez la console Data Pipeline.
  3. Sur la page List Pipelines (Pipelines de la liste) , sélectionnez votre ID du Pipeline, puis  Edit Pipeline (Modifier le pipeline) pour ouvrir la page Architect .
  4. Dans le volet droit, choisissez  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.
  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. Si vous le souhaitez, vous pouvez changer le nom en modifiant l'action dans la section Others (Autres) .
  7. Dans le volet droit, choisissez Others, puis choisissez l'action que vous avez créée au cours de l'étape précédente (par exemple, DefaultAction1).
  8. Dans la liste Type , choisissez 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 champ 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 « Error: #{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. Le sujet peut également comprendre des champs de l'activité (comme « 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 en cas d'échec de l'activité indiquée.

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

Cette page peut-elle être améliorée ?


Vous avez besoin d'aide ?