Azure およびオンプレミス環境からのテレメトリ データを収集、分析、処理するために使用する Azure サービス。
Hi @布 健吾 , 良い一日
回答は英語から翻訳しているため、多少の文法的な誤りがあるかもしれません。あらかじめご了承ください。
クエリ、診断設定、およびしきい値はいずれも適切に設定されているようです。「プレビューではヒットが確認できるものの、[監視] → [アラート] ではゼロのまま」という現象は、ログ検索アラート ルールのシステム割り当てマネージド ID に、ワークスペースに対する「Log Analytics 閲覧者 (Log Analytics Reader)」の権限が付与されていない場合によく見られる典型的なケースです。このロールを付与すれば、次回の評価時にはアラートが表示されるようになるはずです。以下の手順をお試しいただき、結果をお知らせください。
最も可能性の高い原因は、システム割り当てマネージド ID がワークスペースに対してロールを持っていないことです。
「ID: システム割り当てマネージド ID」と記載されていました。
ここが重要なポイントです。ログ検索アラート ルールで「システム割り当てマネージド ID」を選択すると、実行時にユーザーの資格情報が使用されなくなり、代わりにそのマネージド ID としてクエリが実行されるようになります。ポータル上のプレビューでは引き続きユーザーのアカウントが使用されるため、クエリが結果を返しているように見えます。しかし、実際にスケジュールされた評価時刻になると、マネージド ID は(ワークスペースへの権限を持たないため)結果を 0 行しか取得できず、「> 0」というしきい値の条件が満たされないため、アラート インスタンスは作成されません。
これは仕様として文書化されている動作です。
ID ベースの認証を使用する場合、使用する ID には、ルールのスコープに記載されているすべてのリソースに対する「閲覧者 (Reader)」ロールが必要です。https://learn.microsoft.com/ja-jp/azure/azure-monitor/alerts/alerts-troubleshoot
必要なロールの割り当てを一覧表示します。 https://learn.microsoft.com/ja-jp/azure/azure-monitor/alerts/alerts-troubleshoot
修理:
- Open the alert rule → Settings → Identity → confirm System-assigned is enabled, and copy the object ID.
- Open the Log Analytics workspace → Access control (IAM) → Add role assignment.
- Assign Log Analytics Reader (or Reader) → Managed identity → select the alert rule's system-assigned identity.
- Wait one evaluation cycle (≈1–2 minutes with your settings) and perform a test upload/delete on the file share.
その後、「Monitor」→「Alerts」の下にインスタンスが表示され、続いてメールが送信されるはずです。
他の作業を行う前に、これが原因であることを手っ取り早く確認する方法は以下の通りです。: ルールを編集し、ID設定を一時的に「なし(None)」に戻してください(これにより、ルールは読み取り権限を既に持つ組み込みのAzure Monitorサービスプリンシパルを使用して実行されるようになります)。もしアラートが発報されるようになれば、マネージドIDの権限設定こそが不足していた要素だったということになります。
他にも念のため確認しておくべき点がいくつかあります。 IDの修正だけでは解決しない場合は、以下も併せてご確認ください。
- **Rule Resource **health – Monitor → Alerts → Alert rules → your rule → Resource health. Any Degraded / Unavailable status here explains a silent failure.
- **Advanced **options on the rule – make sure Mute actions is not enabled and Automatically resolve alerts isn't causing you to miss the instance. 詳細はこちら https://learn.microsoft.com/ja-jp/azure/azure-monitor/alerts/alerts-troubleshoot-log
- Scope – the rule scope should be the Log Analytics workspace, not the storage account (which it sounds like you already did, just confirming).
この回答が役に立った場合は、「upvote(賛成票)」をクリックしてください。そうすることで、コミュニティ内で同様の疑問を持つ他の人々が、簡単に解決策を見つけられるようになります。