Data Pipeline アクティビティのエラー情報を含む SNS 通知を作成する方法を教えてください。

最終更新日: 2019 年 2 月 12 日

AWS Data Pipeline アクティビティが失敗すると、エラースタックトレースなどの特定の情報を含む Amazon Simple Notification Service (Amazon SNS) 通知を受信します。

簡単な説明

SNS トピックを作成およびサブスクライブし、Data Pipeline アクティビティが失敗したときに SnsAlarm アクションを実行するように設定します。errorStackTrace などの任意のアクティビティのフィールドを SnsAlarm に渡すには、#{node.activityfield} 式を使用します。例:

{
  "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"
},

解決方法

  1. SNS トピックを作成してサブスクライブします トピック ARN  (arn:aws:sns:us-east-1:111122223333:my-topic など) を書き留めます。これは後で使用します。
  2. [ Data Pipeline コンソール] を開きます。
  3.  パイプラインを表示 」のページで、ご自身の [ パイプライン ID] を選択し、次に [ パイプラインを編集 ] をクリックして「 アーキテクト 」ページを開きます。
  4. 右側のペインで [ アクティビティ] をクリックし、通知を受け取るアクティビティ ( SqlActivity など) を選択します。
  5. [ オプションのフィールドを追加 ] ドロップダウンリストで、[ 失敗] を選択します。
  6. [ 失敗時 ] リストで、[ 新規作成: アクション] をクリックします。Data Pipeline が新しいアクションに  DefaultAction1 などの名前を自動的に付与します。必要に応じて、「 その他 」セクションのアクションを編集し、名前を変更できます。
  7. 右側のペインで [ その他] をクリックし、前のステップで作成したアクション ( DefaultAction1 など) を選択します。
  8. [ タイプ ] リストで [ SnsAlarm] を選択します。
  9. [ メッセージ ] フィールドに、アクティビティが失敗したときに受信するメッセージを入力します。 #{node.activityfield} 式を使用すれば、任意のアクティビティのフィールドをメッセージに含めることができます。たとえば、SNS 通知でスタックトレースを受信するには、「Error: #{node.errorStackTrace}」などのメッセージを入力します。各 Data Pipeline アクティビティで使用できるフィールドの詳細については、「 アクティビティ」をご参照ください。
  10. [ 件名 ] フィールドに、通知の件名を入力します。件名には、任意のアクティビティのフィールド (「Failed PipelineId: #{node.@pipelineId} Error: #{node.errorMessage}」など) を含めることもできます。
  11. [ トピック Arn ] フィールドに、SNS トピックの ARN (arn:aws:sns:us-east-1:111122223333:my-topic など) を入力します。
  12. [ 保存] をクリックします。パイプラインをアクティブ化すると、指定されたアクティビティが失敗した場合に通知を受け取ります。


この記事はお役に立ちましたか?

改善できることはありますか?


さらにサポートが必要な場合