2022年8月5日金曜日

EC2 インスタンスの起動に失敗した時に届いたメールを見やすくする

 こんにちは

先日やっとの思いで、EC2インスタンスの起動に失敗した時に、指定したメールアドレスにメールが届くようになったのですが、イベントの内容がその届きますので、人間が見た時になんだか見ずらいです。

EventBridgeでは、単純にイベントをメールすることもできますが、メールする際に、文書を少し整形する機能としてトランスフォーマーという機能があるようです。その機能を用いて、メールの本文を整形してみようと思います。

まずは、EC2起動失敗でメールが届くところまでの設定を、「EC2 インスタンスの起動に失敗したらメールが届くようにする」をもとに設定をしておいてください。

EventBrideのコンソールを開いて、「ルール」を選択して、ルールの一覧から、設定を行いたいルールを選択して「編集」をクリックします。


次のような画面が表示されますので、「次へ」をクリックします。


「次へ」をクリックすると「イベントパターンを構築」という画面が表示されます。



特に設定変更は必要ありません。画面の一番下まで行き、「次へ」をクリックします。


「次へ」をクリックすると「ターゲットを選択」が表示されます。下の方にある「追加設定」をクリックします。


追加設定をクリックすると以下のような表示に切り替わりますので、「ターゲット入力を設定」の箇所を「入力トランスフォーマー」に選択して「入力トランスフォーマーを設定」をクリックします。


トランスフォーマーを設定をクリックすると次のような画面になります。

少し下にスクロールして、


「入力パス、テンプレート、および出力の例」をクリックします。


下の方へスクロールしていって、「ターゲット入力トランスフォーマー」に以下のように入力します。


{

  "Code": "$.detail.errorCode",

  "Description": "$.detail.userIdentity.arn",

  "Message": "$.detail.errorMessage",

  "time": "$.time"

}


こんな感じです。




さらに下へスクロールしていって、テンプレートのところに以下のように入力します。

"Code:<Code>"

"Description:<Description>"

"Message:<Message>"

"time:<time>"


入力するとこんな感じです。入力が終わったら、「確認」ボタンをクリックします。




「確認」をクリックすると元の画面に戻りますので、「次へ」をクリックします。


次に、タグを設定と表示されるのでそのまま「次へ」をクリックします。


確認と更新と表示されますので、一番下までスクロール(確認)します。


一番下までスクロール(確認)したら、「ルールの更新」をクリックしてください。


ルールは正常に更新されましたと表示されることを確認します。



これで設定が完了しているはずです。前回同様にインスタンスの起動を失敗して見ます。以下のようにawsコマンドを実行します。

aws ec2 start-instances --instance-ids i-000000232a600000


こんなメールが届くようになります。イベント全てが届くよりもわかりやすいような気がしますね。


残念ながらメールのタイトルは変更できないようです。メールのタイトルを変更するためには別の仕組みを使わないといけないようです。



0 件のコメント:

結局 Kindle にケースを買いました。

 こんばんわ 私、最近ほとんど外出しなくなったのですが、妻の買い物に一緒に行って、ぼけーっと待っていたり、病院に行ってぼけーっと待っていたりする機会が多くなり、なんなら家でもボケーっとしていることが非常に多くなったためか、Kindleの出番が結構ありそうです。 前回、タブレットで...