監視資料連接器的健康情況
為了確保 Microsoft Sentinel 服務中完整且不間斷的資料擷取,請追蹤資料連接器的健康情況、連線能力和效能。
下列功能可讓您從 Microsoft Sentinel 內執行這項監視:
資料收集狀況監控活頁簿:此活頁簿提供額外的監視器、偵測異常狀況,並提供工作區資料擷取狀態的見解。 您可以使用活頁簿的邏輯來監視擷取資料的一般健康情況,以及組建自訂檢視和以規則為基礎的警示。
SentinelHealth 資料表 (預覽):查詢此資料表能提供健康狀態漂移的見解,例如每個連接器的最新失敗事件,或狀態從成功變更為失敗的連接器,可供您用於建立警示和其他自動化動作。 目前只有已選取的資料連接器會支援 SentinelHealth 資料表。
重要
SentinelHealth 資料資料表目前處於預覽狀態。 請參閱 Microsoft Azure Preview 補充使用規定,了解適用於搶鮮版 (Beta)、預覽版或尚未正式發行 Azure 功能的其他法律條款。
檢視已連線 SAP 系統的健康狀態和狀態:檢閱 SAP 資料連接器下 SAP 系統的健康狀態資訊,並使用警示規則範本來取得 SAP 代理程式資料收集健康狀態的相關資訊。
使用健康情況監視活頁簿
若要開始使用,請從內容中樞安裝數據收集健全狀況監視活頁簿,並從 Microsoft Sentinel 的 [活頁簿] 區段檢視或建立範本復本。
對於 Azure 入口網站 中的 Microsoft Sentinel,在 [內容管理] 下方,選取 [內容中樞]。
針對 Defender 入口網站 中的 Microsoft Sentinel,選取 [Microsoft Sentinel]>[内容管理]>[內容中樞]。在 [內容中樞] 中,在搜尋列中輸入健康情況,並從結果中選取 [資料收集狀況監控]。
從詳細資料窗格中選取 [安裝]。 當您看到活頁簿已安裝的通知訊息,或如果不是 [安裝],而是看到 [設定],請繼續進行下一個步驟。
在 [Microsoft Sentinel] 的 [威脅管理] 底下,選取 [活頁簿]。
在 [活頁簿] 頁面中,選取 [範本] 索引標籤,在搜尋列中輸入健康情況,並從結果中選取 [資料收集狀況監控]。
選取 [檢視範本] 直接使用活頁簿,或選取 [儲存] 以建立活頁簿的可編輯複本。 建立複本時,選取 [檢視已儲存的活頁簿]。
在活頁簿中,請先選取您想要檢視的 [訂閱] 和 [工作區],然後將 TimeRange 定義為根據您的需求篩選資料。 使用 [顯示說明] 切換來顯示活頁簿的原有說明。
此活頁簿有三個索引標籤式區段:
[概觀] 索引標籤會顯示所選工作區中資料擷取的一般狀態:磁碟區量值、EPS 速率,以及上次收到記錄的時間。
[資料收集異常] 索引標籤可幫助您依資料表和資料來源偵測資料收集流程中的異常狀況。 每個索引標籤都會顯示特定資料表的異常 ([一般] 索引標籤包含資料表集合)。 異常的計算方式是使用會傳回異常分數的 series_decompose_anomalies() 函式。 深入了解此函式。 設定函式要評估的下列參數:
[代理程式資訊] 索引標籤會顯示安裝在各種機器上之代理程式健康情況的相關信息,無論是 Azure VM、其他雲端 VM、內部部署 VM 或實體。 監視系統位置、活動訊號狀態和延遲、可用的記憶體和磁碟空間,以及代理程序作業。
在本節中,您必須選取描述您機器環境的索引標籤:如果您想要只檢視 Azure Arc 管理的機器,請選擇 [所有機器] 索引標籤,以檢視已安裝 Azure 監視器代理程式的受控和非 Azure 機器。
使用 SentinelHealth 資料表 (公開預覽)
若要從 SentinelHealth 資料表取得資料連接器健康情況資料,您必須先開啟工作區的 Microsoft Sentinel 健康情況功能。 如需詳細資訊,請參閱開啟 Microsoft Sentinel 的健康情況監視。
開啟健康情況功能後,資料連接器產生第一個成功或失敗事件時會建立 SentinelHealth 資料表。
支援的資料連接器
目前只有下列資料連接器支援 SentinelHealth 資料表:
- Amazon Web Services (CloudTrail 和 S3)
- Dynamics 365
- Office 365
- 適用於端點的 Microsoft Defender
- 威脅情報 - TAXII
- 威脅情報平台
- 任何以無程式代碼連接器平台為基礎的 連接器
了解 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 監視器警示規則。
例如:
在 Azure 監視器警示規則中,選取您的 Microsoft Sentinel 工作區做為規則範圍,然後選取 [自訂記錄搜尋] 做為第一個條件。
視需要自訂警示邏輯,例如頻率或回顧期間,然後使用查詢來搜尋健康情況漂移。
針對規則動作,選取現有的動作群組,或視需要建立新的動作,以設定推播通知或其他自動化動作,例如在您的系統中觸發 Logic App、Webhook 或 Azure Function。
如需詳細資訊,請參閱 Azure 監視器警示概觀和 Azure 監視器警示記錄。
下一步
- 瞭解 Microsoft Sentinel 中的稽核和狀況監控。
- 在 Microsoft Sentinel 中開啟稽核和狀況監控。
- 監視自動化規則和劇本的健康情況。
- 監視分析規則的健康情況和完整性。
- 請參閱 SentinelHealth 和 SentinelAudit 資料表結構描述的詳細資訊。