共用方式為


監視資料連接器的健康情況

為了確保 Microsoft Sentinel 服務中完整且不間斷的資料擷取,請追蹤資料連接器的健康情況、連線能力和效能。

下列功能可讓您從 Microsoft Sentinel 內執行這項監視:

  • 資料收集狀況監控活頁簿:此活頁簿提供額外的監視器、偵測異常狀況,並提供工作區資料擷取狀態的見解。 您可以使用活頁簿的邏輯來監視擷取資料的一般健康情況,以及組建自訂檢視和以規則為基礎的警示。

  • SentinelHealth 資料表 (預覽):查詢此資料表能提供健康狀態漂移的見解,例如每個連接器的最新失敗事件,或狀態從成功變更為失敗的連接器,可供您用於建立警示和其他自動化動作。 目前只有已選取的資料連接器會支援 SentinelHealth 資料表。

    重要

    SentinelHealth 資料資料表目前處於預覽狀態。 請參閱 Microsoft Azure Preview 補充使用規定,了解適用於搶鮮版 (Beta)、預覽版或尚未正式發行 Azure 功能的其他法律條款。

  • 檢視已連線 SAP 系統的健康狀態和狀態:檢閱 SAP 資料連接器下 SAP 系統的健康狀態資訊,並使用警示規則範本來取得 SAP 代理程式資料收集健康狀態的相關資訊。

使用健康情況監視活頁簿

  1. 從 Microsoft Sentinel 入口網站中,從導覽功能表的 [內容管理] 區段選取 [內容中樞]

  2. 在 [內容中樞] 中,在搜尋列中輸入健康情況,並從結果中選取 [資料收集狀況監控]

  3. 從詳細資料窗格中選取 [安裝]。 當您看到活頁簿已安裝的通知訊息,或如果不是 [安裝],而是看到 [設定],請繼續進行下一個步驟。

  4. 從導覽功能表的 [威脅管理] 區段選取 [活頁簿]

  5. 在 [活頁簿] 頁面中,選取 [範本] 索引標籤,在搜尋列中輸入健康情況,並從結果中選取 [資料收集狀況監控]

  6. 選取 [檢視範本] 直接使用活頁簿,或選取 [儲存] 以建立活頁簿的可編輯複本。 建立複本時,選取 [檢視已儲存的活頁簿]。

  7. 在活頁簿中,請先選取您想要檢視的 [訂閱] 和 [工作區],然後將 TimeRange 定義為根據您的需求篩選資料。 使用 [顯示說明] 切換來顯示活頁簿的原有說明。

    資料連接器狀況監控活頁簿登陸頁面

此活頁簿有三個索引標籤式區段:

  • [概觀] 索引標籤會顯示所選工作區中資料擷取的一般狀態:磁碟區量值、EPS 速率,以及上次收到記錄的時間。

  • [資料收集異常] 索引標籤可幫助您依資料表和資料來源偵測資料收集流程中的異常狀況。 每個索引標籤都會顯示特定資料表的異常 ([一般] 索引標籤包含資料表集合)。 異常的計算方式是使用會傳回異常分數series_decompose_anomalies() 函式。 深入了解此函式。 設定函式要評估的下列參數:

    • AnomaliesTimeRange:此時間選擇器僅適用於資料收集異常檢視。

    • SampleInterval:在指定的時間範圍內,取樣資料的時間間隔。 異常分數只會在最後一個間隔的資料上進行計算。

    • PositiveAlertThreshold:此值會定義正異常分數閾值。 其接受十進位值。

    • NegativeAlertThreshold:此值會定義負異常分數閾值。 其接受十進位值。

      資料連接器狀況監控活頁簿異常狀況分頁

  • [代理程式資訊] 索引標籤會顯示各種機器上 (無論是 Azure VM、其他雲端 VM、內部部署 VM 或實體) 安裝的 Log Analytics 代理程式健康情況相關資訊。 您可以監視下列項目:

    • 系統位置

    • 活動訊號狀態和延遲

    • 可用的記憶體和磁碟空間

    • 代理程式作業

      在本節中,您必須選取描述機器環境的索引標籤:如果您只想要檢視 Azure Arc 受控機器,請選擇 [Azure 受控機器] 索引標籤;選擇 [所有機器] 索引標籤,以便檢視已安裝 Log Analytics 代理程式的受控和非 Azure 機器。

      資料連接器狀況監控活頁簿代理程式資訊分頁

使用 SentinelHealth 資料表 (公開預覽)

若要從 SentinelHealth 資料表取得資料連接器健康情況資料,您必須先開啟工作區的 Microsoft Sentinel 健康情況功能。 如需詳細資訊,請參閱開啟 Microsoft Sentinel 的健康情況監視

開啟健康情況功能後,資料連接器產生第一個成功或失敗事件時會建立 SentinelHealth 資料表。

支援的資料連接器

目前只有下列資料連接器支援 SentinelHealth 資料表:

了解 SentinelHealth 資料表事件

下列型別的健康情況事件會記錄在 SentinelHealth 資料表中:

  • 資料擷取狀態變更。 只要資料連接器狀態維持穩定,並連續發生成功或失敗事件,就會每小時記錄一次。 只要資料連線器的狀態不變更,監視就只會每小時運作,以防止備援稽核,並減少資料表大小。 如果資料連接器的狀態連續失敗,則 ExtendedProperties 資料行會包含有關失敗的其他詳細資料。

    如果資料連接器的狀態變更,無論是從成功到失敗、從失敗到成功,或因失敗原因而有所變更,都會立即記錄事件,讓您的小組採取主動且即時的動作。

    可能的暫時性錯誤 (例如來源服務節流) 只會在持續超過 60 分鐘後記錄。 這 60 分鐘可讓 Microsoft Sentinel 解決後端的暫時性問題並趕上資料,而不需要任何使用者動作。 絕對不是暫時性的錯誤會立即記錄下來。

  • 失敗摘要。 每個連接器、工作區每小時記錄一次,並彙總失敗摘要。 只有連接器在指定時數期間發生輪詢錯誤時,才會建立失敗摘要事件。 其包含 ExtendedProperties 資料行提供的任何額外詳細資料,例如查詢連接器來源平台的時間週期,以及該時段內遇到的不同失敗清單。

如需詳細資訊,請參閱 SentinelHealth 資料表資料行結構描述

執行查詢以偵測健康情況漂移

在 SentinelHealth 資料表上建立查詢,以幫助您偵測資料連接器中的健康情況漂移。 例如:

偵測每個連接器的最新失敗事件

SentinelHealth
| where TimeGenerated > ago(3d)
| where OperationName == 'Data fetch status change'
| where Status in ('Success', 'Failure')
| summarize TimeGenerated = arg_max(TimeGenerated,*) by SentinelResourceName, SentinelResourceId
| where Status == 'Failure'

偵測連接器從失敗到成功狀態的變更

let lastestStatus = SentinelHealth
| where TimeGenerated > ago(12h)
| where OperationName == 'Data fetch status change'
| where Status in ('Success', 'Failure')
| project TimeGenerated, SentinelResourceName, SentinelResourceId, LastStatus = Status
| summarize TimeGenerated = arg_max(TimeGenerated,*) by SentinelResourceName, SentinelResourceId;
let nextToLastestStatus = SentinelHealth
| where TimeGenerated > ago(12h)
| where OperationName == 'Data fetch status change'
| where Status in ('Success', 'Failure')
| join kind = leftanti (lastestStatus) on SentinelResourceName, SentinelResourceId, TimeGenerated
| project TimeGenerated, SentinelResourceName, SentinelResourceId, NextToLastStatus = Status
| summarize TimeGenerated = arg_max(TimeGenerated,*) by SentinelResourceName, SentinelResourceId;
lastestStatus
| join kind=inner (nextToLastestStatus) on SentinelResourceName, SentinelResourceId
| where NextToLastStatus == 'Failure' and LastStatus == 'Success'

偵測連接器從成功到失敗狀態的變更

let lastestStatus = SentinelHealth
| where TimeGenerated > ago(12h)
| where OperationName == 'Data fetch status change'
| where Status in ('Success', 'Failure')
| project TimeGenerated, SentinelResourceName, SentinelResourceId, LastStatus = Status
| summarize TimeGenerated = arg_max(TimeGenerated,*) by SentinelResourceName, SentinelResourceId;
let nextToLastestStatus = SentinelHealth
| where TimeGenerated > ago(12h)
| where OperationName == 'Data fetch status change'
| where Status in ('Success', 'Failure')
| join kind = leftanti (lastestStatus) on SentinelResourceName, SentinelResourceId, TimeGenerated
| project TimeGenerated, SentinelResourceName, SentinelResourceId, NextToLastStatus = Status
| summarize TimeGenerated = arg_max(TimeGenerated,*) by SentinelResourceName, SentinelResourceId;
lastestStatus
| join kind=inner (nextToLastestStatus) on SentinelResourceName, SentinelResourceId
| where NextToLastStatus == 'Success' and LastStatus == 'Failure'

為健康情況問題設定警示和自動化動作

雖然您可以使用 Microsoft Sentinel 分析規則在 Microsoft Sentinel 記錄中設定自動化,但如果您想要針對對資料連接器的健康情況漂移收到通知並立即採取動作,建議您使用 Azure 監視器警示規則

例如:

  1. 在 Azure 監視器警示規則中,選取您的 Microsoft Sentinel 工作區做為規則範圍,然後選取 [自訂記錄搜尋] 做為第一個條件。

  2. 視需要自訂警示邏輯,例如頻率或回顧期間,然後使用查詢來搜尋健康情況漂移。

  3. 針對規則動作,選取現有的動作群組,或視需要建立新的動作,以設定推播通知或其他自動化動作,例如在您的系統中觸發 Logic App、Webhook 或 Azure Function。

如需詳細資訊,請參閱 Azure 監視器警示概觀Azure 監視器警示記錄

下一步