Azure Monitorでアクティビティログの監視設定(仮想マシンの起動停止を検知)

2022-02-14Azure,Monitor,Virtual Machine

アクティビティログ(Azure Monitor Activity Log)にはAzureのリソース操作も記録されます。
仮想マシン(Azure VM)を起動停止した場合ついても、アクティビティログに出力、記録されます。

Azure アクティビティ ログ

アクティビティログはAzure Monitorを使って監視が出来ます。
今回は仮想マシン起動停止時のアクティビティログ確認、Azure Monitorでアラートルール作成手順、アラート通知内容までを確認して紹介します。

スポンサーリンク

Azureで仮想マシンを起動停止してアクティビティ ログを確認

アクティビティ ログとは何?

公式サイトには「サブスクリプション レベルのイベントに関する分析情報を提供するプラットフォーム ログです」と記述があります。

Azure Monitor アクティビティ ログ データを送信する

一言でいうとAzureプラットフォームで発生したことが出力される管理ログになります。
Azureプラットフォームでリソース作成等の操作を行った場合の操作ログ、プラットフォームで発生した障害等でリソース正常性に影響が発生した場合のログ等が出力されます。
アクテビティログを診断設定を使ってLog Analyticsワークスペースなどの別リソースへ転送する事で長期間のログ保管やKQLクエリを利用した検索が可能になります。

アクテビティログの診断設定やLog Analyticsワークスペースでの検索方法についてはこちらで紹介しています。

仮想マシン起動停止時のアクティビティログ

仮想マシンを起動停止した場合のアクティビティログを確認してみます。
アクティビティログはAzure Monitorや各リソースのアクティビティログのリソースメニューから確認できます。

仮想マシン起動停止時のアクティビティログ

開始の場合はStart Virtual Machineのログが出力されます。
停止の場合はDeallocate Virtual Machineのログが出力されます。
正常に起動した場合には成功のログが出力されます。
開始、許可のログも併せて出力されます。

Azure VMを起動停止した時のアクティビティログをAzure Portalで表示

仮想マシン起動停止に関する電源状態(ステータス)についてはこちらの記事で紹介しています。

—広告—

仮想マシン起動停止をAzure Monitorで監視

Azure Monitorで設定可能なアクティビティログ監視項目

仮想マシンなどのリソースではアクティビティログのシグナルが定義されています。
シグナルを選択する事でアクティビティログを使った監視設定ができます。

シグナルの種類でアクティビティログを選択して確認します。
仮想マシンの操作や動作に応じたシグナルが多数準備されている事が分かります。

アラートルール画面(シグナルの選択)
Azure Monitorで仮想マシンのアクティビティログに関するシグナル一覧を表示

仮想マシン起動を検知するアラートルール作成

Azure Monitorで仮想マシンの起動を検知するアラートルールを作成します。
今回は仮想マシンのリソースから設定しています。

アラートルール作成
仮想マシンのメニューで警告を選択します。
作成でアラートルール作成を選択します。
アラートルールの作成を開始する(Azure Monitorで仮想マシンを起動した時に検知するアラートルールを作成)

See all signalsを選択して、シグナルの選択画面を表示します。
仮想マシンの起動(仮想マシン)を選択します。
適用を選択し、次へ進みます。

※仮想マシンのメニューから作成した場合、自動的にスコープ設定されます。スコープには(設定を開始した)仮想マシンが選択されています。

アクティビティログのシグナルを選択する(Azure Monitorで仮想マシンを起動した時に検知するアラートルールを作成)

条件の設定画面です。
デフォルトではイベントのレベルや状態はすべて選択されています。
検知したいイベントレベルや状態を選択します。
今回はそのまま進めます。

※状態をすべて選択した場合3回のアラート通知されます。これはStarted,Accepted,Successedの3回検知されるためです。

 

 

条件を設定する(Azure Monitorで仮想マシンを起動した時に検知するアラートルールを作成)
アクティビティログのイベントレベル(Azure Monitorで仮想マシンを起動した時に検知するアラートルールを作成)
アクティビティログの状態の種類(Azure Monitorで仮想マシンを起動した時に検知するアラートルールを作成)

アクショングループの設定です。
アクショングループを選択します。
今回は事前に作成していたアラートルール(メール送信用)を選択しています。
次へ進めます。

 

 

アクショングループを選択(Azure Monitorで仮想マシンを起動した時に検知するアラートルールを作成)
アクショングループを選択完了時の画面(Azure Monitorで仮想マシンを起動した時に検知するアラートルールを作成)

詳細設定です。
アラートルール名を設定します。

※アラートルール名はメール送信時のSubjectになります。
※アラートルール名は作成後に変更できません。

詳細でアラートルール名を設定(Azure Monitorで仮想マシンを起動した時に検知するアラートルールを作成)

確認画面です。
アラートルールの設定内容を確認します。
アラートルールを作成します。

アラートルール確認画面(Azure Monitorで仮想マシンを起動した時に検知するアラートルールを作成)

アクショングループの作成手順についてはこちらで紹介しています。
今回利用したアクショングループについてもこちらの記事で紹介したものを使用しています。

アラートルールを確認

作成したアラートルールを確認します。

仮想マシン起動時のアラートルール
左側のメニューで警告を選択します。
アラートルールを選択します。
仮想マシン起動時のアラートルールを確認できます。
仮想マシンに設定されているアラートルールを確認(Azure Monitorで仮想マシンを起動した時に検知するアラートルール)
作成したアラートルールを表示(Azure Monitorで仮想マシンを起動した時に検知するアラートルール)

仮想マシン起動時のアラート確認

仮想マシンを起動して、作成したアラートがを発動するか確認します。
警告にアラートが3件表示されている事が確認できます。
仮想マシン起動時に、OperartionNameが"Microsoft.Compute/virtualMachines/start/action"であるアクティビティログが3件出力される為です。

仮想マシン起動時のアラート
仮想マシン起動時のアラートが3件発生している事が分かります。 発生したアラートを確認(Azure Monitorで仮想マシンを起動した時に検知するアラートルール)

アラートメールを確認します。
Subjectにアラートルール名が表示されています。
アクティビティログの内容も、アラート通知で確認できます。
Statusの項目を確認すると3通それぞれの内容が異なる事が確認できます。
それぞれStatusが"Started"、"Accepted"、"Suceeded"となっています。

アラート通知メールを確認(Azure Monitorで仮想マシンを起動した時に検知するアラートルール)
アラート通知メールのStatusを確認(Azure Monitorで仮想マシンを起動した時に検知するアラートルール)
アラート通知メールのStatusを確認(Azure Monitorで仮想マシンを起動した時に検知するアラートルール)

アラート通知メールのStatusを確認(Azure Monitorで仮想マシンを起動した時に検知するアラートルール)

仮想マシン停止(割り当て解除)を検知するアラートルール作成

仮想マシン停止(割り当て解除)時も検知できます。
作成手順は起動時と同様です。
シグナルの選択で仮想マシンの割り当て解除(仮想マシン)を選択します。

仮想マシン停止(割り当て解除)時のアラート
シグナルの選択画面で仮想マシンの割り当て解除(仮想マシン)を選択します。
起動時と同様にアラートルールを作成します。

アラートルール作成時に仮想マシンを割り当て解除のシグナルを選択(Azure Monitorで仮想マシンを停止(割り当て解除)した時に検知するアラートルール)
アラートルール作成時の確認画面(Azure Monitorで仮想マシンを停止(割り当て解除)した時に検知するアラートルール)
仮想マシンを停止(割り当て解除)すると、同様にアラート検知する事が確認できます。 仮想マシン割り当て解除時のアラート通知
仮想マシン割り当て解除時のアラート通知メール
仮想マシン割り当て解除時のアラート通知メールのStatusやOperartionName

サブスクリプションやリソースグループの仮想マシンに適用

仮想マシンのメニューからアラートルールを作成した場合は、スコープ(適用範囲)は対象の仮想マシンのみになります。
これだと、仮想マシン単位でアラートルールを作成する必要があります。

サブスクリプションやリソースグループの仮想マシンを対象にアラートルールを作成できます。
この場合は、スコープ(適用範囲)を対象のサブスクリプション、リソースグループに変更します。

“Virtual Machines"や"仮想マシン”と表記される項目が複数表示されますが、スコープに指定するのは"Microsoft.Compute/virtualMachines"と表記されている項目です。

スコープ選択とアラート

アラートルールでスコープタブを選択します。
リソースの種類はVirtual Machinesを選択します。
サブスクリプションやリソースグループを選択し適用します。

 

スコープを設定変更(Azure Monitorで仮想マシンを起動した時に検知するアラートルールを作成)
スコープにリソースグループを指定(Azure Monitorで仮想マシンを起動した時に検知するアラートルールを作成)

シグナルはスコープに個別の仮想マシンを指定した時と同様に選択します。

シグナルを選択(Azure Monitorで仮想マシンを起動した時に検知するアラートルールを作成)

実際にアラートを発生させてみると同様にアラートメールを受信する事が出来ました。

※アラートメール名は違いを識別する為VM起動時のアラート(サブスクリプション設定)としています。

仮想マシン起動アラートの発生を確認(リソースグループ指定時)

仮想マシン作成時のアクティビティログや監視設定についてはこちらで紹介しています。

最後に

仮想マシン起動停止時のアクティビティログ確認から、Azure Monitorを使ったアクティビティログの監視設定までやってみました。
アクティビティログのシグナルが準備されておりとても簡単に設定できる事が分かりました。
仮想マシンだけではなく、他のリソースでも同様にアクティビティログを使って監視ができます。
引き続き色々試してみたいと思います。

スポンサーリンク