Slack に通知したい? Lambda 使わなくても Chatbot で簡単にできるよ
Slack 推してきてよかったと思いました。那須です。
ちょっと前に、AWS Chatbot という新サービスがリリースされましたね。
アラーム情報を Chime や Slack に通知してくれるサービスです。 今までは Lambda で Slack に Webhook を投げるように関数書いていかないとチャットに通知させることができませんでしたが、これでコードが書けない人でも簡単に Slack に通知できるようになりました。
AWS はたまに設定完了させるのが難しいなーって思うことがありますが、Chatbot はめちゃくちゃ簡単です! 実際に設定してテスト的に通知させてみたので、Chatbot の紹介記事みたいになってますがよければ見ていってください。
設定の流れ
まずは チャットクライアントを選んで設定を始めましょう。
私は Slack に通知することにしました。
どの Slack チャンネルに通知するかを指定します。
Chatbot にアタッチする IAM ロールを指定します。
ここでは新規作成しました。
Slack に投げる時に指定する SNS トピック名を指定します。
事前に SNS トピックの作成だけしておけば、この後の設定でサブスクリプションを自動で設定してくれますよ。
最後に Configure を押しましょう。
設定が完了しました。
SNS トピックを見てみると、Chatbot のサブスクリプションが設定されていますね。
通知させてみましょう
簡単にテストしたいので、テスト用の Lambda 関数を作成します。
その Lambda 関数の呼び出し回数(Invocations)が 1 以上になれば先ほど作成した SNS トピックに投げる CloudWatch Alarm を作成しました。
テスト用の Lambda 関数をテスト実行してしばらくすると、無事に Slack チャンネルに通知されました!
たったこれだけの設定でいい感じの通知をしてくれるのは本当に助かります!
利用シーンはいっぱいありそう
Chatbot のソースとして使える AWS サービスは↓このドキュメントに書かれています。
ドキュメント読んでみていろいろ考えてみました。
- AWS 利用料のアラートは嬉しいかも
- やっぱ Lambda で Slack 連携しないといけなかったのがなくなるのが一番の嬉しいポイントかも
- Security Hub のカスタムアクションを自動で実行できたらなぁ…
まだベータ版ということですので、GA になる頃にはほとんどの通知が Chatbot で通知できるようになってることを祈ってます!
さいごに
今回は Chatbot の紹介になりました。 ソースとして使えるサービスもそうですが、ターゲットに指定できるチャット(MS Teams とか Google Meet とか Typetalk とか)も増えてほしいですね。 ちょっとしたアクションも Slack から実行できれば嬉しいですが、それはまた別で実装してくれってことですかね。 がんばります!