KQLを書けない監視設計は、属人化する
- 山崎行政書士事務所
- 5月2日
- 読了時間: 18分

― Azure監視における「見える監視」から「書ける監視」への転換とクラウド法務上の説明責任 ―
※本稿は、Azure監視設計、KQL、ログ証跡、運用文書、監査対応資料の整備を目的とする一般的情報提供です。個別紛争、訴訟対応、代理交渉、個別法的判断は弁護士等の専門領域となる場合があります。山崎行政書士事務所のクラウド法務としては、行政書士業務の範囲を守りつつ、Azure現場の技術実態を契約・規程・責任分界・監査証跡へ落とし込む観点から論じます。
要旨
Azure監視の現場では、ポータル画面のグラフを眺めて「異常は見えている」にもかかわらず、障害原因を追えない事故が起きる。理由は明確である。監視条件が担当者の頭の中にあり、再現可能な検索式がなく、監査時に「どの条件で、どの期間を、どのデータソースから抽出したのか」を説明できないからである。
Microsoft公式情報では、Azure Monitor LogsはAzure Data Explorerに基づき、同じKusto Query Language、すなわちKQLを使用してログクエリを記述する。また、Log AnalyticsのKQLクエリはLog Analyticsワークスペースからデータを取得し、ログ調査、変換、集計、パターン検出、異常値の特定などに利用される読み取り専用の要求である。これは、監視を「画面で見る」ものから、「条件を書いて再現する」ものへ変えるための中核技術である。
本稿は、ある現場で起きた「画面上で確認」しか障害報告書に書けなかった事例をもとに、Azure Monitor、Log Analytics、KQL、ログ検索アラート、保存済みクエリ、Azure Monitor Agent、Data Collection Rules、Microsoft Sentinelまでを横断し、クラウド法務上どのように監視設計を文書化すべきかを論じる。結論は単純である。監視は、眺めるものではない。書いて、保存し、再実行し、第三者に説明できる状態にするものである。
キーワード: Azure Monitor、Log Analytics、KQL、監視設計、ログ検索アラート、監査証跡、クラウド法務、情シス、Azure Monitor Agent、Data Collection Rules
1. 序論:グラフで“見えている”のに、原因が追えない
ある現場で、監視はAzureポータル画面のグラフ頼みだった。
CPU使用率は見えている。リクエスト数も見えている。エラー件数も何となく増えている。Application Insightsの画面にも、Log Analyticsのグラフにも、異常らしき山は出ている。
しかし、障害会議で問われた瞬間に詰まった。
「何時何分から異常だったのか」「どの条件で異常と判断したのか」「対象は全リソースなのか、一部インスタンスなのか」「再実行すると同じ結果が出るのか」「監査時に抽出条件を提示できるのか」「障害報告書に、どのログを根拠として書けるのか」
回答は、弱かった。
「画面上で確認しました」「グラフで増えていました」「担当者が見た限りでは異常でした」
これは監視ではない。これは、観察である。
Azure MonitorのLog Analyticsには、簡易モードとKQLモードがあり、簡易モードではスプレッドシートに近い操作で探索できる一方、KQLモードではKusto Query Languageを最大限に活用してログから深い分析を得ることができる。画面操作は入口として有効だが、監査・障害報告・再現性の観点では、KQLで条件を明文化することが不可欠である。
2. 事例:障害報告書に書けたのは「画面上で確認」だけだった
本稿の事例は、複数のAzure運用現場で見られる典型的な失敗を抽象化したものである。
対象システムは、Azure上の業務アプリケーションであった。アプリケーションはApp Service、Azure SQL Database、Storage、Key Vault、Application Insights、Log Analytics Workspaceを利用していた。監視ダッシュボードも存在し、ポータル上ではリクエスト数、エラー率、CPU、メモリ、依存関係の遅延が見える状態だった。
ある日、本番環境で業務処理が遅延した。利用部門からは「画面が重い」「登録処理が戻ってこない」「一部の処理だけタイムアウトする」と連絡が来た。情シスはポータル画面を開き、グラフを確認した。確かに、ある時間帯に依存関係の失敗が増えている。アプリケーションの例外も増えているように見える。
ところが、原因を追う段階で失速した。
どのテーブルを見ればよいのか。AppRequests なのか、AppDependencies なのか、AppExceptions なのか。AzureDiagnostics なのか、AzureActivity なのか。対象時間は障害発生時刻の前後5分なのか、30分なのか。成功と失敗をどの列で判定するのか。しきい値は誰が決めたのか。本番、ステージング、開発で同じ条件なのか。前回障害時と同じ検索条件なのか。
誰も即答できなかった。
その結果、障害報告書に書けたのは、次のような記述だった。
〇時頃、Azureポータル画面上でエラー件数の増加を確認。詳細原因は調査中。再発防止として監視強化を検討。
この記述は、現場の苦労を反映している。しかし、説明責任には耐えない。なぜなら、抽出根拠がないからである。
3. 技術的前提:KQLは“検索式”ではなく“監視仕様書”である
KQLを単なるログ検索のための便利な言語と見ている限り、監視設計は属人化する。KQLは、Azure監視において「何を異常とみなすか」を記述する仕様書である。
Azure Monitor Logsでは、ログデータはテーブルに編成され、各テーブルは複数の列で構成される。Microsoftは、KQLクエリはテーブル名またはsearchから始められるが、クエリ範囲が明確になりパフォーマンスと関連性も向上するため、テーブル名から始めることを推奨している。また、Azure Monitorで使われるKQLは大文字と小文字が区別されるため、テーブル名や列名はスキーマに従って正しく指定する必要がある。
つまり、KQLには次の情報が含まれる。
どのデータソースを見るか
どの時間範囲を見るか
どの条件を異常とみなすか
どの列を証跡として残すか
どの粒度で集計するか
どのリソース単位で分割するか
しきい値を何にするか
再実行時に同じ結果が出るか
これは、監視仕様書そのものである。
ポータル画面のグラフは、監視結果の表示である。KQLは、監視条件の定義である。この違いを理解しない監視設計は、必ず属人化する。
4. 現場で起きる属人化の構造
KQLを書けない監視設計では、次の三つの属人化が起きる。
第一に、条件が人の頭の中にある。「このグラフがこのくらい跳ねたら危ない」「この時間帯に見る」「このフィルターを入れる」という運用が、担当者の経験則に依存する。これはベテラン担当者がいる間は回る。しかし、夜間、休日、異動、退職、委託先交代が起きると一気に崩れる。
第二に、再現できる検索式がない。障害当日に見たグラフを、翌週の障害報告会で再現できない。時間範囲、スコープ、フィルター、集計単位、対象リソースが曖昧だからである。結果として、「当時は見えていた」という口頭説明に頼ることになる。
第三に、監査時に抽出根拠を説明できない。監査では、「ログを見ました」では足りない。どのログを、どの期間、どの条件、どの権限、どの手順で抽出したのかが問われる。KQLがなければ、抽出根拠を文書化できない。
NIST Cybersecurity Framework 2.0は、サイバーセキュリティの取組を理解、評価、優先順位付け、コミュニケーションするための高レベルな成果分類を提供し、特定の達成方法を処方するものではないと説明している。監視設計に置き換えれば、「異常を検知する」だけでなく、「検知条件を組織として説明し、共有し、改善できる状態にする」ことが重要である。
5. 2026年時点のAzure監視設計:収集、検索、アラート、証跡を分けて考える
Azure監視は、単にログを溜めるだけでは成立しない。少なくとも、次の四層に分けて設計する必要がある。
層 | 目的 | 代表的な設計要素 |
収集 | どのデータを取るか | Azure Monitor Agent、Data Collection Rules、診断設定 |
検索 | どの条件で調べるか | Log Analytics、KQL、保存済みクエリ |
通知 | どの条件で発報するか | ログ検索アラート、アクショングループ、共通アラートスキーマ |
証跡 | どう再現・説明するか | クエリ管理台帳、障害報告書、監査抽出手順、責任分界表 |
Azure Monitor Agentは、Azureおよびハイブリッド仮想マシンのゲストOSから監視データを収集し、Azure Monitorへ配信するためのサポート対象エージェントである。従来のLog Analyticsエージェントを使っている場合は、Azure Monitor Agentへの移行ガイダンスを参照する必要があり、Log Analyticsエージェントは2024年8月31日に廃止されている。
Data Collection Rules、すなわちDCRは、Azure Monitorにおけるデータ収集を、従来よりも管理しやすくスケーラブルな標準構成として扱う仕組みであり、収集するデータ、スキーマ、格納前変換、送信先を定義できる。Microsoft公式情報でも、DCRには一貫した構成方法、変換、Infrastructure as CodeとDevOpsプロセスを支援するスケーラブルな構成オプションがあると説明されている。
この時点で明らかなように、現代のAzure監視は「ポータルでグラフを見る」だけの世界ではない。データ収集の段階から、どのログを取り、どこへ送り、どのKQLで評価し、どのアラートで通知し、どの文書で説明するかを一体で設計する必要がある。
6. 保存済みクエリ:KQLを個人メモから組織資産に変える
KQLを書けても、個人のメモ帳やチャットに貼っているだけでは不十分である。監視条件は、組織で再利用できる形に保存しなければならない。
Microsoft Learnでは、Log Analyticsでログクエリを保存すると、すべてのLog Analyticsコンテキストで利用でき、他のユーザーが同じクエリを実行でき、組織用の共通クエリライブラリを作成できると説明している。また、保存されたクエリはクエリパックに格納され、フィルターやグループ化、リソーススコープでの利用、サブスクリプション横断利用などの利点がある。
これはクラウド法務上、極めて重要である。
なぜなら、保存済みクエリは「監視条件の証跡」になるからである。誰が見ても同じ条件で抽出できる。障害報告書にクエリ名を記載できる。監査時に抽出根拠として提示できる。委託先やSOCと同じ検索式を共有できる。変更時には、クエリ名、版数、変更理由を記録できる。
KQLを保存しない組織では、監視条件が担当者の頭の中に残る。KQLを保存する組織では、監視条件が組織資産になる。
7. ログ検索アラート:KQLを発報条件へ昇格させる
KQLは調査だけでなく、アラート条件にもなる。
Azure Monitorのログ検索アラートルールは、監視対象リソース、監視データ、アラートをトリガーする条件を組み合わせるものであり、アクショングループやアラート処理ルールによって、アラート発生時に何が起きるかを定義できる。ログ検索アラートでは、カスタムログ検索を選択し、アラートを作成するログイベントを返すクエリを作成する。
さらに、ログ検索アラートでは、返される行数や数値列の計算を測定対象にでき、ディメンションによってアラートをリソースやインスタンス単位に分割できる。評価頻度は1分から24時間まで設定できるが、1分頻度ではクエリ最適化上の制限もあるため、クエリ内容と運用要件を合わせて設計する必要がある。
ここで重要なのは、アラートは「通知設定」ではなく「判断条件」だという点である。
どのKQLで、どの時間範囲を見て、どの集計値が、どのしきい値を超えたら、誰に通知し、どの手順で一次対応するのか。
これを定義して初めて、監視は運用になる。
8. 共通アラートスキーマ:発報後の証跡も標準化する
KQLでアラートを作っても、通知先ごとにペイロードが違い、Teams、メール、Webhook、ITSM連携で情報が揺れると、障害対応は属人化する。
Azure Monitorの共通アラートスキーマは、アクティビティログ、メトリック、ログ検索アラートなどの通知を標準化し、すべてのアラート通知に対して一つの標準化されたスキーマを提供する。共通スキーマにより、電子メール、Webhook、Logic Apps、Azure Functions、Automation Runbookなどとの統合管理を簡素化できる。
監査の観点では、共通アラートスキーマは「発報後の説明」を支える。たとえば、次の項目を標準的に追える。
アラートID
アラートルール名
重大度
対象リソース
発生時刻
解決時刻
監視サービス
アラート条件
カスタムプロパティ
つまり、KQLで検知条件を明文化し、共通アラートスキーマで通知内容を標準化することで、「なぜ鳴ったのか」「誰が受けたのか」「どのリソースだったのか」を後から説明しやすくなる。
9. Microsoft SentinelにおけるKQL:SOC運用でも“書ける監視”が前提になる
セキュリティ監視では、Microsoft Sentinelのスケジュールされた分析ルールでもKQLが中核になる。Microsoft Learnは、Sentinelのルールクエリについて、「これがルールの本質」であり、生ログデータを分析するKustoクエリを表示または入力し、ルール作成前にクエリを計画・設計し、ログページで構築・テストできると説明している。
この考え方は、SOC運用にもそのまま当てはまる。
「不審なサインインがあった」では足りない。どのKQLで検知したのか。どの時間範囲を見たのか。どのユーザー、IP、端末、アプリ、失敗理由を抽出したのか。MITRE ATT&CKのどの戦術・技術に対応するのか。アラートの重大度は固定なのか、クエリ結果で動的に変えるのか。
これらをKQLとルール設定で表現できないSOC運用は、結局、アナリスト個人の経験に依存する。
10. KQL設計の実務例:障害報告に使える形へ整える
以下は、監視設計でKQLを文書化する際の考え方である。実際のテーブル名は、Application Insightsのワークスペースベース構成、診断設定、DCR、リソース種別によって変わるため、各環境のスキーマに合わせて調整する必要がある。
10.1 アプリケーション失敗率の監視例
let lookback = 15m;AppRequests| where TimeGenerated >= ago(lookback)| summarize TotalRequests = count(), FailedRequests = countif(Success == false) by bin(TimeGenerated, 5m), AppRoleName, _ResourceId| extend FailureRate = todouble(FailedRequests) / todouble(TotalRequests) * 100| where TotalRequests >= 50| where FailureRate >= 5| project TimeGenerated, AppRoleName, _ResourceId, TotalRequests, FailedRequests, FailureRateこのKQLで重要なのは、「失敗が増えた」という感覚を、FailureRate >= 5、TotalRequests >= 50、lookback = 15mという条件に変換している点である。障害報告書には、「画面上で増加を確認」ではなく、「15分間の要求を5分粒度で集計し、50件以上のリクエストがある系列で失敗率5%以上を抽出」と書ける。
10.2 依存関係失敗の監視例
let lookback = 30m;AppDependencies| where TimeGenerated >= ago(lookback)| where Success == false| summarize Failures = count(), SampleOperation = any(OperationName) by Target, DependencyType, bin(TimeGenerated, 5m), _ResourceId| where Failures >= 10| order by TimeGenerated descこのKQLは、「DBが遅い」「外部APIが怪しい」という曖昧な発言を、依存先、依存種別、失敗数、時間帯へ分解する。障害時に、アプリ担当とインフラ担当の会話が変わる。
「何となくDBっぽい」ではなく、「5分間でこの依存先への失敗が10件以上出ています」と言える。
10.3 管理操作の変更追跡例
let lookback = 24h;AzureActivity| where TimeGenerated >= ago(lookback)| where OperationNameValue has_any ("write", "delete", "action")| where ActivityStatusValue in ("Success", "Succeeded")| project TimeGenerated, Caller, OperationNameValue, ResourceGroup, ResourceProviderValue, _ResourceId, CorrelationId| order by TimeGenerated desc障害原因が構成変更である場合、AzureActivityの確認は不可欠である。ここで大切なのは、単に「誰かが触ったか」を見るのではなく、Caller、OperationNameValue、_ResourceId、CorrelationIdを障害報告書に使える形で抽出することである。
10.4 ハートビート欠落の監視例
let lookback = 15m;Heartbeat| where TimeGenerated >= ago(lookback)| summarize LastHeartbeat = max(TimeGenerated) by Computer, _ResourceId| where LastHeartbeat < ago(10m)| project Computer, _ResourceId, LastHeartbeatこのような単純なKQLでも、「サーバーが落ちたようです」と「最後のHeartbeatは何時何分で、10分以上更新がありません」では、説明力がまったく違う。
11. KQLの品質:動けばよいではなく、監査で読めること
KQLは、動けばよいわけではない。監査・引継ぎ・障害対応に耐えるKQLには品質が必要である。
Microsoft公式情報では、Azure Monitor LogsやAzure Data Explorerには自動クエリ最適化がある一方、大規模データセットに対するクエリは計算リソースを必要とし、パフォーマンスに影響し得るため、クエリ最適化によって実行時間短縮や調整・拒否リスク低減が期待できると説明されている。
実務では、次のようなKQLは危険である。
search "error"理由は、範囲が広すぎるからである。どのテーブルか不明。どの期間か不明。どのエラーを意味するのか不明。結果が多すぎて再現性も低い。
監視設計で使うKQLは、最低限、次を満たすべきである。
テーブル名から始める
TimeGeneratedで時間範囲を明示する
対象リソースまたは環境を明示する
projectで提出に必要な列を絞る
summarizeで集計根拠を明示する
whereで異常条件を明文化する
order byで確認順を固定する
コメントで目的と運用上の注意を残す
KQLは、エンジニアのメモではない。KQLは、監視条件の契約書に近い。
12. クラウド法務上の問題:ログがあるのに、証拠にならない
「ログはあります」と「証跡として提出できます」は違う。
ログは大量にある。しかし、どこにあるか分からない。誰が見られるか分からない。どのKQLで抽出するか分からない。抽出条件の版数が分からない。障害当時の検索式が残っていない。アラートが鳴った理由を再現できない。
この状態では、ログは存在していても、説明責任には耐えない。
山崎行政書士事務所が掲げる「クラウド法務 × Azure現場伴走」は、要件定義から運用、KQL・スクリプトレビュー、契約・文書整備までを一つの流れで支える点に特徴があり、技術・運用・法務を別窓口に分けず、Azure現場の設計・運用言語に落とし込むことを重視している。
KQL監視設計は、まさにこの領域である。技術だけでは、検索式は書けるが、責任分界や監査文書に落ちない。法務だけでは、契約条項は書けるが、TimeGeneratedや_ResourceIdの意味が分からない。両方をつなげて初めて、「このログで、この条件で、この障害を説明する」という実務文書が成立する。
13. 障害報告書に必要なKQL証跡
障害報告書で「画面上で確認」と書くのは弱い。最低でも、次の項目を残すべきである。
項目 | 記載すべき内容 |
クエリ名 | 保存済みクエリ名、クエリパック名、版数 |
実行日時 | KQLを実行した日時、実行者 |
対象時間 | TimeGeneratedの範囲 |
対象環境 | prod/stg/dev、サブスクリプション、リソースグループ |
対象テーブル | AppRequests、AppDependencies、AzureActivity等 |
異常条件 | 失敗率、件数、しきい値、除外条件 |
結果 | 件数、対象リソース、代表イベント |
アラート | アラートルール名、発報時刻、重大度 |
対応 | 一次対応、恒久対応、再発防止 |
保存先 | 報告書、監査証跡フォルダ、チケット番号 |
この表があるだけで、障害報告書の品質は変わる。「見た」ではなく、「同じ条件で再抽出できる」状態になる。
14. 監視設計書に入れるべきKQL台帳
監視設計書には、KQL台帳を入れるべきである。
管理項目 | 例 |
監視ID | MON-APP-001 |
監視名 | 本番アプリ失敗率監視 |
目的 | 業務アプリのHTTP失敗率上昇を検知 |
対象テーブル | AppRequests |
KQL保存場所 | Query Pack / Git / 運用手順書 |
時間範囲 | 直近15分 |
集計粒度 | 5分 |
しきい値 | 失敗率5%以上、かつリクエスト50件以上 |
ディメンション | AppRoleName、_ResourceId |
アラート頻度 | 5分ごと |
通知先 | 情シス一次、アプリ担当、SOC |
初動手順 | 依存関係失敗KQL、AzureActivity確認KQLを実行 |
証跡保持 | チケット、障害報告書、KQL結果CSV |
責任者 | 情シス監視設計責任者 |
改定履歴 | 日付、変更理由、承認者 |
ここまで書いて初めて、監視条件は組織の管理対象になる。
15. アラート根拠を保存しない運用は、後で必ず詰まる
現場では、アラートが鳴ったときにTeamsへ通知され、担当者が対応し、復旧したら終わりという運用が多い。しかし、これは危険である。
後日、取引先や経営層から問われる。
「何をもって異常と判断したのですか」「なぜその重大度だったのですか」「誰に通知されましたか」「初動は何分後でしたか」「同じ条件で再発検知できますか」「前回と同じ障害ですか」
この問いに答えるには、アラートルール、KQL、通知ペイロード、対応チケット、障害報告書がつながっている必要がある。
ログ検索アラートでは、KQLクエリ内の相対時間句を直接定義することが推奨され、関数内で時間範囲が必要な場合はパラメータとして渡すべきとされている。これは、アラート評価の正確性と信頼性に影響するためである。
つまり、アラートKQLは「それっぽく動く」だけでは足りない。評価時刻、時間範囲、しきい値、集計単位を明確にしなければ、後から説明できない。
16. 「見える監視」と「書ける監視」の違い
観点 | 見える監視 | 書ける監視 |
主体 | 担当者の目視 | 組織で定義されたKQL |
条件 | 暗黙知 | 明文化 |
再現性 | 低い | 高い |
監査対応 | 画面説明中心 | 抽出条件と結果を提示可能 |
障害報告 | 「画面上で確認」 | 「このKQLでこの条件を確認」 |
引継ぎ | 属人的 | 手順化可能 |
自動化 | 難しい | アラート化・Runbook化可能 |
改善 | 感覚的 | しきい値・KQL・データソースを改定可能 |
監視は、眺めるものではない。監視は、書くものである。書けるから保存できる。保存できるから再実行できる。再実行できるから説明できる。説明できるから監査に耐える。
17. 実務チェックリスト:KQL監視設計で確認すべきこと
情シス、SOC、SIer、MSP、アプリベンダーが共同でAzure監視を設計する場合、最低限、次を確認すべきである。
確認項目 | チェック内容 |
データ収集 | AMA、DCR、診断設定のどれで収集しているか |
ワークスペース | どのLog Analytics Workspaceに集約しているか |
テーブル | 監視対象テーブルと列が明確か |
KQL | 監視条件がKQLで明文化されているか |
保存 | KQLがクエリパックまたはGit等で保存されているか |
アラート | KQLがログ検索アラートに接続されているか |
通知 | アクショングループと通知先が定義されているか |
ペイロード | 共通アラートスキーマを使うか整理されているか |
初動 | アラート後に実行する追加KQLが定義されているか |
証跡 | 障害報告書にクエリ名・実行結果を残すか |
責任分界 | KQL作成、承認、変更、監査対応の担当が明確か |
改定 | しきい値変更時の承認と履歴管理があるか |
このチェックリストを満たしていない監視設計は、ポータル画面がどれだけ美しくても、説明責任の面では弱い。
18. 契約・規程・運用文書への落とし込み
クラウド法務としては、KQL監視設計を次の文書へ落とし込む必要がある。
第一に、監視設計書。監視対象、データソース、KQL、しきい値、アラート頻度、通知先、初動手順を記載する。
第二に、KQL管理台帳。各KQLの目的、対象テーブル、保存場所、版数、作成者、承認者、改定履歴を管理する。
第三に、障害対応手順書。アラート発生時に、どのKQLをどの順番で実行し、どの結果をチケットや報告書に貼るかを定義する。
第四に、委託先責任分界表。SIer、MSP、SOC、自社情シス、アプリベンダーの間で、ログ収集、KQL作成、アラート運用、障害報告、監査対応の責任を分ける。
第五に、SOW・運用保守契約の別紙。監視対象、通知時間帯、一次対応範囲、ログ抽出協力、KQL変更承認、証跡提出期限を明文化する。
第六に、監査対応資料。「監視しています」ではなく、「このKQLで、この条件を、この頻度で評価し、この証跡を保存しています」と説明する。
この文書化は、紛争代理ではない。Azure現場の事実、条件、手順、責任分界を整理し、説明可能な文書にする行政書士業務の実務領域である。
19. 考察:KQLを書けない組織は、監視を外注しても属人化する
監視を外注すれば安心、という考え方は危険である。
SOCに任せている。MSPに任せている。SIerが見ている。アプリベンダーが対応する。
それでも、KQLとアラート根拠が自社で説明できなければ、監視は属人化したままである。
特に、委託先が交代したときに問題が表面化する。前任者がどの条件で見ていたのか分からない。アラートが多すぎるため、後任者が勝手にしきい値を緩める。古いKQLが残り、テーブル変更に追従していない。結果として、監視はあるのに検知できない、または検知しても説明できない状態になる。
監視の外注は悪ではない。しかし、監視条件まで外注先の頭の中に置いてはいけない。KQL、アラートルール、通知、証跡、責任分界を自社の管理台帳に残して初めて、外注監視は統制になる。
20. 結論:見える監視ではなく、書ける監視へ
本稿の結論は、次の一文に尽きる。
KQLを書けない監視設計は、属人化する。
ポータル画面のグラフは重要である。しかし、それだけでは障害報告書に耐えない。監査時に抽出根拠を説明できない。委託先交代時に引き継げない。再発時に同じ条件で比較できない。経営層に「なぜ異常と判断したか」を説明できない。
監視は、眺めるものではない。
KQLで条件を明文化する。保存済みクエリとして組織資産にする。ログ検索アラートへ接続する。共通アラートスキーマで通知を標準化する。障害報告書にクエリ名と抽出結果を残す。監査対応資料に抽出条件を記載する。責任分界表にKQLの作成・承認・変更責任を書く。
ここまで行って初めて、Azure監視は「見える」から「説明できる」へ変わる。
山崎行政書士事務所のクラウド法務・Azure技術支援は、この「技術的にログがある」と「法務・監査で証跡として出せる」の隙間を埋める支援である。KQL、Azure Monitor、Log Analytics、Sentinel、契約、規程、障害報告、監査回答を一つの線でつなぎ、情シスと経営層が同じ言葉で説明できる監視設計へ整える。
見える監視ではなく、書ける監視へ。画面確認ではなく、KQLで再現できる証跡へ。監視は、眺めるものではなく、書いて説明するものである。





コメント