sorta kinda...

主にAWS関連ですが、これに限らずいろいろ勉強したことや思ったことを書いていきます。

Slack に通知したい? Lambda 使わなくても Chatbot で簡単にできるよ

Slack 推してきてよかったと思いました。那須です。

ちょっと前に、AWS Chatbot という新サービスがリリースされましたね。

aws.amazon.com

アラーム情報を Chime や Slack に通知してくれるサービスです。 今までは Lambda で Slack に Webhook を投げるように関数書いていかないとチャットに通知させることができませんでしたが、これでコードが書けない人でも簡単に Slack に通知できるようになりました。

AWS はたまに設定完了させるのが難しいなーって思うことがありますが、Chatbot はめちゃくちゃ簡単です! 実際に設定してテスト的に通知させてみたので、Chatbot の紹介記事みたいになってますがよければ見ていってください。

 

設定の流れ

まずは チャットクライアントを選んで設定を始めましょう。 私は Slack に通知することにしました。
f:id:nasrinjp1:20190810204130p:plain

どの Slack チャンネルに通知するかを指定します。
f:id:nasrinjp1:20190810204147p:plain

Chatbot にアタッチする IAM ロールを指定します。 ここでは新規作成しました。
f:id:nasrinjp1:20190810204159p:plain

Slack に投げる時に指定する SNS トピック名を指定します。 事前に SNS トピックの作成だけしておけば、この後の設定でサブスクリプションを自動で設定してくれますよ。 最後に Configure を押しましょう。
f:id:nasrinjp1:20190810204211p:plain

設定が完了しました。
f:id:nasrinjp1:20190810204226p:plain

SNS トピックを見てみると、Chatbot のサブスクリプションが設定されていますね。
f:id:nasrinjp1:20190810212811p:plain

 

通知させてみましょう

簡単にテストしたいので、テスト用の Lambda 関数を作成します。 その Lambda 関数の呼び出し回数(Invocations)が 1 以上になれば先ほど作成した SNS トピックに投げる CloudWatch Alarm を作成しました。
f:id:nasrinjp1:20190810204257p:plain

テスト用の Lambda 関数をテスト実行してしばらくすると、無事に Slack チャンネルに通知されました! たったこれだけの設定でいい感じの通知をしてくれるのは本当に助かります!
f:id:nasrinjp1:20190810204307p:plain

 

利用シーンはいっぱいありそう

Chatbot のソースとして使える AWS サービスは↓このドキュメントに書かれています。

docs.aws.amazon.com

ドキュメント読んでみていろいろ考えてみました。

  • AWS 利用料のアラートは嬉しいかも
  • やっぱ Lambda で Slack 連携しないといけなかったのがなくなるのが一番の嬉しいポイントかも
  • Security Hub のカスタムアクションを自動で実行できたらなぁ…

まだベータ版ということですので、GA になる頃にはほとんどの通知が Chatbot で通知できるようになってることを祈ってます!

 

さいごに

今回は Chatbot の紹介になりました。 ソースとして使えるサービスもそうですが、ターゲットに指定できるチャット(MS Teams とか Google Meet とか Typetalk とか)も増えてほしいですね。 ちょっとしたアクションも Slack から実行できれば嬉しいですが、それはまた別で実装してくれってことですかね。 がんばります!