リソースの変更を検知してFunctionを実行する

Pocket

はじめに

今回は Azureのリソースグループ内のリソース変更イベントを検知し、任意の処理を実行する方法を検証してみます。

手順

Event Grid ドメインを作成する

これは Event Grid を使うために最低限必要となる基盤のようなものです。

Functions を作成する

次に、リソースグループに対する変更を検知した際に、実行する Functions を作成します。
特に凝ったことはせず、通常通り 従量課金プランの Functions を作成します。

作成したら「関数」を追加します。
下図のように Azure Event Grid trigger を選択します。

リソースグループを開く

次に、検知したいリソースグループを選択します。
メニューから「イベント」を選択し、「Azure関数」を選択します。

  • 「トピックの詳細」の「ソースリソース」には 監視対象のリソースグループを
  • イベントの種類には、検知したいイベントを(今回はわかりやすいよう「削除成功」のみとします)
  • 最後のエンドポイントには 先程作成した Functions を指定し、作成ボタンを押します

Functionsのログを確認

作成した関数から「モニタ」を選択し、実行ログがなにもないことを確認しておきます。

対象リソースグループにリソースを追加して削除する

では試してみましょう。
対象リソースグループにストレージアカウントを作成し、削除してみます。

対象リソースグループに作成されていることを確認し、ストレージアカウントを削除します。

作成したFunctionsの関数のモニターをチェックしてみます。

上記のように、実行されていることが確認できました!

あとは関数内で必要な情報を取得したり、処理を追加することで、割とお手軽に監視ツールなどを作ることができます。

まとめ

ポータルから手軽にリソース・イベントドリブンのシステムを作ることができました。
アイデア次第では、Azureのリソース管理を更に便利で安全なものにしてくれるのではないでしょうか。

Pocket

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です