關於設計和建立監控系統的建議
適用於此 Power Platform Well-Architected 卓越運營清單建議:
OE:06 | 設計和實施監控系統以驗證設計選擇並為未來的設計和業務決策提供資訊。 此系統捕獲並公開從工作負載發出的操作遙測數據、指標和日誌。 |
---|
本指南描述了設計和建立監控系統的建議。 為了有效監控工作負載的安全性、效能和可靠性,您需要一個具有自己的堆疊的綜合系統,為所有監控、偵測和警報功能提供基礎。
定義
詞彙 | 定義 |
---|---|
記錄檔 | 記錄系統事件。 紀錄可以包含結構化或自由格式文字格式的不同類型的資料。 內容包含一個時間戳記。 |
計量 | 定期收集的數值。 計量描述了特定時間系統的某些方面。 |
關鍵設計原則
若要為您的工作負載實施全面的監控系統設計,請遵循以下核心原則:
只要可行,請利用平臺提供的監控工具,這些工具通常只需要很少的配置,並且可以深入瞭解您的工作負載,否則可能難以獲得。
從整個工作負載堆疊收集紀錄和指標。 所有低程式碼和代碼優先的元件和資源都應該配置為生成標準化的、有意義的數據,並且需要收集這些數據。
將收集到的資料儲存在標準化、可靠且安全的儲存解決方案中。
處理儲存的資料,以便可以透過分析和視覺化解決方案進行處理。
分析處理後的資料以準確確定工作負載的狀態。
在有意義的儀表板或報告中為工作負載團隊和其他利害關係人視覺化工作負載的狀態。
設定可動作的警報和其他對智慧定義的閾值的自動回應,以便在出現問題時通知工作負載團隊。
將監控和警報系統納入您的整體工作負載測試做法中。
確保監控和警報系統處於持續改進的範圍內。 生產中的應用程式和配置行為提供了持續學習的機會。 將這些經驗教訓納入監控和警報設計中。
將您收集和分析的監控數據與 系統和使用者流 聯繫起來,以將流的運行狀況與數據以及工作負載的整體運行狀況相關聯。 根據流分析該數據有助於將可觀測性策略與運行狀況模型對齊。
最大限度地減少任何可識別資訊的儲存內容,以確保您遵守法律法規。 如果需要存儲可識別資訊,請確保在設計解決方案時考慮允許個人請求刪除其資訊的要求。
切勿記錄使用者密碼或其他可能用於實施身分詐欺的資訊。 在儲存資料之前從資料中清除這些詳細資訊。 監管要求可能規定需要存檔和保存為審計和安全而收集的資訊。 這些資料也是敏感的,可能需要加密或以其他方式保護以防止篡改。
您應該盡可能地自動化監控系統的所有功能,並且它們都應該全天、每天連續運作。
此工作流程管道說明了監控系統:
集合
您應該配置所有工作負載元件,無論它們是低程式碼或代碼優先元件還是平台設置 (如環境和策略),以捕獲遙測數據以及日誌和指標等事件。
紀錄主要用於偵測和調查異常情況。 通常,日誌由工作負載元件生成,然後發送到監控平臺或由監控平台自動拉取。
指標主要用於建立健康模型和識別工作負載效能和可靠性的趨勢。 指標對於識別使用者使用行為的趨勢也很有用。 這些趨勢可以幫助從客戶的角度指導有關改進的決策。 通常,指標是在監控平台中定義的,監控平台和其他工具會輪詢工作負載以擷取指標。
工作負載資料
使用開箱即用 Application Insights 的集成來收集數據。 啟用 Application Insights 後,您可以清楚地了解即時和歷史的重要事件。
應用程式紀錄支援端到端的應用程式生命週期。 日誌記錄對於了解應用程式在各種環境中如何運作、發生哪些事件以及事件發生的條件至關重要。
我們建議您收集所有主要環境中的應用程式紀錄和事件。 如果可行的話,透過為每個環境使用不同的資料儲存來盡可能地分離環境之間的資料。 使用篩選器確保非關鍵環境不會使生產紀錄的解釋變得複雜。 最後,應用程式中的相應紀錄條目應擷取其各自事務的相關識別碼。
基礎架構和配置資料
對於工作負載中的基礎架構資源,請確保收集紀錄和指標。 由於它是一個平臺即服務 (PaaS) 產品,因此 Power Platform 您捕獲與底層基礎設施相關的日誌的能力可能會受到限制。 但是,您可以擷取與工作負載執行狀況和事件相關的配置和策略變更的紀錄和分析。
盡可能從您的雲端平台收集紀錄。 您也許能夠收集訂閱的活動記錄和管理層面的診斷紀錄。
效能考量
複雜且高度可擴展的應用程式可能會產生大量資料。 資料量可能會導致效能問題,具體取決於應用程式層級追蹤的詳細程度。 遙測解決方案不得成為瓶頸,並且必須隨著系統的擴展而擴展。
分析
從各種來源收集數據后,對其進行分析以評估系統的整體運行狀況。 為了進行此分析,請清楚了解:
- 如何根據關鍵績效指標 (KPI) 和您定義的其他績效指標構建數據。
- 如何關聯不同指標和紀錄檔案中擷取的資料。 當您追蹤一系列事件時,這種相關性非常重要,並且可以幫助您診斷問題。
在大多數情況下,您的工作負載將具有不同的元件,並且日誌或事件將以不同的格式或表格擷取。 您需要準確地組合資料以了解工作負載的整體運作狀況。
例如,您的 Power Platform 解決方案可能由以下元件組成:
- 允許使用者與數據交互的畫布應用
- 允許管理員配置應用程序設置的模型驅動應用
- 執行數據操作的雲端流程
- Dataverse 存儲與操作關聯的數據的實例
- 從 Azure 表存儲中檢索數據並從應用程式調用的 Azure 函數
單一商業營運的使用資料可能跨越工作負載的所有元件。 需要關聯此資訊以提供操作的資源和處理使用情況的總體檢視。
資料分析建議
關聯應用程式等級和資源等級紀錄。 在這兩個級別評估數據,以優化檢測和排查問題。
明確冷分析的儲存保留時間。 我們建議採用這種做法,以便能夠進行特定時期的歷史分析。 它還可以幫助您控制儲存成本。 實施流程,確保資料歸檔到更便宜的儲存並聚合資料以進行長期趨勢分析。
分析長期趨勢以預測營運問題。 評估長期資料以形成營運策略,並預測可能發生哪些營運問題以及何時發生。 例如,您可能會注意到平均回應時間隨著時間的推移緩慢增加並接近最大目標。
視覺效果
健康監控中的視覺化對於了解工作負載的狀態至關重要。 可視化可以説明您快速識別問題和趨勢,還可以説明您瞭解對工作負載所做的更改的影響。
儀表板
可視化數據的最常見方法是使用可以以圖表或圖形形式顯示信息的儀錶板。 這些項目可以參數化,分析人員可以針對任何特定情況選擇重要參數,例如時間段。
將儀表板與運行狀況模型保持一致,以便它們指示工作負載或工作負載元件何時正常、降級或不正常。
為了使儀表板系統有效運作,它必須對工作負載團隊有意義。 可視化與工作負載運作狀況相關且可操作的資訊。 當工作負載或元件降級或不健康時,工作負載團隊的成員應該能夠輕鬆識別問題源自於工作負載的位置,並開始採取糾正措施或調查。 相反,包含不可操作或與工作負載運行狀況無關的資訊可能會使儀錶板變得不必要地複雜,並使試圖從可操作數據中辨別背景噪音的團隊成員感到沮喪。
您可能為利害關係人或開發人員提供儀表板,這些儀表板被自訂為僅顯示他們認為相關的工作負載的資料。 確保工作負載團隊了解其他團隊有興趣查看的資料點類型,並在共用儀表板之前預覽儀表板以檢查清晰度。 為利益相關者提供有關工作負載的控制面板是讓他們瞭解工作負載運行狀況的好方法,但如果利益相關者不清楚地了解數據,則可能會適得其反。
限制授權人員存取儀表板。 儀表板上的資訊可能是敏感資訊。 您也應該保護底層資料以防止使用者更改它。
回報
報表用於產生系統的總體檢視。 它可能包含歷史資料和目前資訊。 報告要求分為兩大類:營運報告和安全報告。
營運報告通常包括:
- 匯總統計訊息,可用於了解指定時間視窗內整個系統或指定子系統的資源利用率。
- 辨識指定期間內整個系統或指定子系統的資源使用趨勢。
- 監控指定時間內整個系統或指定子系統發生的異常情況。
- 確定應用程式對已部署資源的效率,並瞭解是否可以在不必要地影響性能的情況下減少資源量及其相關成本。
安全報告追蹤客戶對系統的使用。 它可以包括:
- 稽核使用者作業。 此任務需要記錄每個使用者完成的單獨要求以及日期和時間。 資料的結構應使管理員能夠快速重建使用者在指定時間內完成的操作順序。
- 追蹤使用者的資源使用情況。 此工作需要記錄使用者的每個請求如何訪問系統中的各種資源,以及訪問時間。 管理員可以使用此資料按使用者產生指定時間段內的使用率報告,可能用於計費。
警示
為了幫助確保系統保持健康、反應迅速且安全,請設定警報,以便操作員能夠及時回應。 警報可以包含足夠的內容資訊,以幫助他們快速開始診斷活動。
警報建議
- 定義一個警報回應流程,識別負責的擁有者和動作。
- 設定明確範圍的警報並調整詳細程度以最大限度地減少噪音。
- 使用自動警報解決方案,例如 Splunk 或 Azure Monitor,而不是要求人們主動尋找問題。
- 使用警報來實施修復程序。 例如,自動建立票證來追蹤問題和解決方案。
閾值
當監控系統偵測到超過閾值時,就會產生警報。 確保您設定的閾值通常為您提供足夠的時間對工作負載實施必要的更改,以避免效能下降或中斷。 您還應該實施必要的錯誤處理並擷取工作負載中的已知錯誤,以減少警報數量。 例如,為雲端流中的操作配置重試策略,以便在流程運行過程中嘗試重試,並且僅在重複重試失敗並記錄流程失敗併發送警報時嘗試重試。 在設計可靠的監控和警報策略 的建議中瞭解更多資訊。
Power Platform 簡易化
Power Platform 與 Application Insights 整合,後者是 Azure Monitor 生態系統的一部分。 使用此整合來:
接收由 Dataverse 平台在 Application Insights 中擷取的診斷和效能遙測。 您可以訂閱以接收有關應用程式在 Dataverse 資料庫和模型導向應用程式中執行之作業的遙測。 此遙測提供的資訊可用於診斷和疑難排解與錯誤和效能相關的問題。
連線畫布應用。 Application Insights 您可以使用這些分析來診斷問題並了解使用者對您的應用程式執行的動作。 您可以收集資訊,協助您推動更周延的商業決策並改善您的應用程式品質。
配置 Power Automate 要流入的 遙測數據 Application Insights。 例如,您可以監控雲端流程執行併為 cloud-flow 運行失敗創建警報。
從 Copilot Microsoft Copilot Studio 捕獲遙測數據以在 Azure Application Insights 中使用。 您可以使用此遙測來監控發送到 Copilot 和從 Copilot 發送的記錄消息和事件、在使用者對話期間觸發的主題,以及可以從您的主題發送的自定義遙測事件。
Power Platform resources 在 Purview 合規門戶中 Microsoft 記錄活動。 大多數活動在活動開始後 24 小時內顯示。 請勿使用此資訊進行即時監控。 有關記錄 Power Platform 中活動的詳細資訊,請參閱:
- Power Apps
- Power Automate
- Copilot Studio
- Power Pages
- Power Platform 連接
- 數據丟失防護
- Power Platform 管理日誌
- Dataverse 審計
工作負載 Power Platform 可能包括 Azure 資源。 有關詳細資訊,請參閱 有關設計和創建監控系統的建議。
Power Platform 卓越中心入門套件是包含一組元件和工具的參考實作,專門用來協助您開始建立採納和支援 Power Platform 的原則。 CoE 初學者工具包中包括一組豐富的儀錶板。 有關詳細資訊,請參閱 使用 CoE Microsoft Power Platform 儀錶板 Power BI 深入瞭解您的採用情況。
Power Platform自動化套件是一套工具,可加速電腦版 Power Automate 自動化專案的使用及支援。 套件提供工具,可協助您管理自動化專案並監控,以估計已儲存和投資回報 (ROI)。 Automation Kit 的一部分是 控制中心,它補充了 Monitor 桌面流程 runs 功能。 控制中心的重點是一個流程協調檢視,供支援分析師和組織在必要時進行監視、採取動作和發出警報。