Azure VMからLog Analyticsへのログ転送状況監視をしてみた(Metric)
前回に引き続き、Azure VMからAzure Monitorログ(Log Analytics)へのログ転送状況監視をAzure Monitorを使って実施してみました。
Azure MonitorでLog AnalyticsのメトリックHeartBeatという項目があります。これを利用して監視することで、Azure VMからLog Analyticsへ正常にログ転送が行えているか監視出来ます。
なお、Azure VMからLog Analyticsへの転送はAzure VMにインストールされたOMSエージェントで実施されます。この監視でエラーが発生した場合はOMSエージェントの再起動等が必要になります。
また、メトリック(Metric)を利用した方式だけではなく、Custom log searchで実施する方法もあります。下記記事も併せて参照頂ければと。
Azure Monitorを利用したOMSエージェントHeartBeat監視
Azure Monitorの機能を利用して実施します。
1) Azure Portal上でモニターのメニューにアクセスします。アラートで[+ 新しいアラート ルール] をクリックします。
2)アラートルールの作成でリソースの選択をクリックします。
3)リソースの選択で VMが接続されているLog Analyticsのワークスペースを選択します。選択したら完了をクリックします。
4)次に監視条件の設定を行います。条件の選択をクリックします。
5)シグナルロジックの構成画面が表示されます。シグナル名でHeartbeatを選択します。
6)シグナルロジックの構成画面が表示されます。下記画面の通り選択します。
-
- ディメンション名:Computer
- 演算子:=
- ディメンション値:現在および将来のすべての値。
*現在および将来のすべての値を選択する事で、ワークスペースに新規VMが接続された場合も監視が自動的に有効になります。
“アラート ロジック" にて以下を設定します。
-
- しきい値 : Static
- 演算子 : 次の値より小さい
- 集計の種類 : 合計
- しきい値 : 1
これで、過去5分間に1度もHeartBeatが来てない場合にエラーとして検知が可能になります。
“評価基準" にて以下を設定します。
-
- 集約粒度 (期間) : 5 分
- 評価の頻度 : 5 分
7)アクショングループにて電子メールの送信を行うアクションを設定します。
なお、アクショングループの作成についていは、こちらの記事を参照頂ければと。
8)アラート ルール名や重要度をを入力します。入力が終わったら作成をクリックします。
これでアラートルールの作成は完了です。
OMSエージェントHeartBeatエラー時のアラートメール
Azure VM側でOMSエージェントを停止し、5分経過すると以下のメールが来ます。
どのVMのOMSエージェントが停止したかは、Dimensionsに記載されます。
Suject:Azure: Activated Severity: 3 ”アラート名”
Dimensions | ResourceId = /subscriptions/XXXXXXXXXXXXX/resourceGroups/RG名/providers/Microsoft.OperationalInsights/workspaces/ワークスペース名-01Computer = ”VM名” |
---|
MetricとCustom log searchで設定した場合の違い
主な違いは以下のような感じになります。Log AnalyticsのHeartBeat監視の場合は、Metricを使った方が良さそうな感じです。
-
- メール送信タイミングが異なる
- Custom log searchを使用した場合は、回復するまでメールが送信され続けます。
- Metricを使用した場合は、発生時と回復時にのみメールが送信されます。
- コストは、Metricで設定した場合の方が安い。
- メール送信タイミングが異なる
※設定は実際の環境に合わせてチューニングするようにして下さい。