Operations & Troubleshooting参照資料確認: 2026-09-11

Activity Log / Change Correlation

Azure Activity Logでネットワークresourceのcreate/update/delete、caller、correlationIdを追い、障害発生時刻とcontrol-plane changeを相関する。

Scope: Microsoft Learnの一次資料を2026-09-11時点で確認したPlatform Referenceです。quota、role、API version、retirement、service healthは更新されるため、production change直前にOfficial sourcesを再確認してください。

Activity Log / Change Correlationを理解するための前提

Azure Activity LogはAzure resourceのmanagement/control-plane operationを既定で記録し、追加設定なしで収集される。 Activity Logは通常create/update/delete/actionを記録し、read operationは通常記録しない。

イベントは通常発生後3〜20分で分析・alertに利用可能になり、Azure側の既定保持は90日。 90日を超えて保持するにはdiagnostic settingでLog Analytics/Storage/Event Hubs等へexportする。

resource creator informationはActivity Logにのみあるため、監査要件がある環境では90日より長いretentionを設計する。

通信や判断の流れを追う
症状を再現設定を確認能動試験ログ / packetアプリ確認

Control plane と Data plane

Control planeARM、Azure RBAC、Resource Graph、Activity Log、provider metadata、Service Health等からresourceの存在・権限・変更・platform状態を確認する。
Data plane実際のpacket/request成功は、effective route/security、DNS、health probe、flow/resource logs、synthetic test等で別途証明する。control-plane Succeededだけで通信成功としない。

仕組みと設計上の意味

ネットワーク障害で最初に聞くべき質問の一つは「直前に誰が何を変えたか」です。Activity LogはNSG/UDR/VNet/Firewall/Application Gateway等のARM management operationを記録し、caller、operation、status、timestamp、correlation IDを持ちます。packet traceでは見えないcontrol-plane changeをincident timelineへ結び付ける役割です。

一方、Activity Logはdata planeのpacket allow/denyやapplication requestを示しません。設定変更がSucceededでも、trafficが成功したとは限りません。またread operationは通常対象外なので、「誰が設定を閲覧したか」の完全な監査ログとして扱わないでください。

Retention: Azureの既定Activity Logは90日。長期監査やresource creator情報が必要なら、diagnostic settingで外部destinationへexportします。

Operational / decision path

対象scopeと時刻を固定し、read-only evidence → 判断 → change → same testで再検証の順を崩さない。

  1. incident start/endの時刻をUTCへ正規化する。
  2. affected resource ID、resource group、subscriptionを固定する。
  3. start前後のActivity Logを取得し、Write/Delete/Actionとfailed deploymentを並べる。
  4. correlationId/caller/operationNameから同じdeploymentやautomation runを束ねる。
  5. 疑わしいchangeごとにresource config diffとdata-plane testを取り、単なる時刻一致と因果関係を分ける。

設計判断

判断点推奨理由
Retention90日超ならDiagnostic settingでexportcreator/監査情報を失わない
Timeincident evidenceはUTCを正本Portal local timeとの混乱を避ける
Correlationresource ID + correlationId + caller同じdeployment operationを束ねる
CausalityActivity Log + config diff + runtime testSucceeded change=原因、と短絡しない

確認手順

Azure Portal

  • Monitor → Activity log、または対象resource → Activity logでresource filterを固定。
  • Event initiated by / Operation / Status / Timespanをincident windowへ絞る。
  • Change historyが利用可能なeventはbefore/afterを確認し、correlation IDを記録。

Evidence contract

Identitytenant / subscription / resource ID / region / principalを可能な限り固定。
TimeUTC time rangeと実行時刻を記録し、変更・障害timelineと結ぶ。
Scopesubscription/region/resource typeなど、その値が意味を持つscopeを必ず残す。
Runtimecontrol-plane evidenceと実通信/data-plane evidenceを分けて保存。

Read-only first: 以下のCLI/PowerShellは原則として参照系から開始します。コメントでMUTATINGと示した操作は、必要性・scope・rollbackを確認した後にのみ実行します。

Azure CLI
start="2026-09-11T06:00:00Z"
end="2026-09-11T08:00:00Z"
resourceId="<resource-id>"

az monitor activity-log list   --resource-id "$resourceId"   --start-time "$start" --end-time "$end"   --select eventName operationName status eventTimestamp correlationId resourceId caller   -o jsonc
PowerShell
$start = [datetime]"2026-09-11T06:00:00Z"
$end   = [datetime]"2026-09-11T08:00:00Z"

Get-AzActivityLog -ResourceId <resource-id> -StartTime $start -EndTime $end |
  Select-Object EventTimestamp, OperationName, Status, Caller, CorrelationId, ResourceId

障害切り分け

症状疑う点証拠次の確認
変更したはずだが見えない3〜20分のavailability、別scope、data-plane operationUTC timestamp + target resource IDsubscription/RG scopeでも検索
90日より前を調べられないdefault retention expireddiagnostic setting destinationLog Analytics/Storage exportの有無を確認
Succeeded change直後に障害相関はあるが因果未確定config diff + effective state + runtime testchange内容がpathに影響するか検証
callerがservice principalautomation/IaC deploymentobject ID + correlationIdpipeline/run historyと相関

変更・rollback

  • Activity Log export用diagnostic settingは既存destination/retention/成本を確認して変更する。
  • incident中に疑わしいresourceを即rollbackする前に、Activity Log eventとcurrent effective stateを保存する。
  • rollback後も同じtest vectorを再実行し、Activity Log上のSucceededだけで復旧完了としない。
  • 長期保存先を変更する場合はdual-write期間を設け、query continuityを確認してから旧destinationを停止する。

変更前後で保存する証拠

Before対象resource IDs、関連設定、current state、query/command出力。
Changeactor、ticket/deployment ID、correlation ID、開始/終了時刻。
Aftersame command/queryとsame test vectorで差分確認。
Rollback戻す条件、戻す対象、rollback後に再実行する観測。

Official sources