關於設計和建立監控系統的建議
適用於此 Power Platform Well-Architected 卓越營運檢查清單建議:
OE:06 | 設計和實施監控系統以驗證設計選擇並為未來的設計和業務決策提供資訊。 該系統擷取並公開從工作負載發出的作業遙測、指標和記錄。 |
---|
本指南描述了設計和建立監控系統的建議。 為了有效監控工作負載的安全性、效能和可靠性,您需要一個具有自己的堆疊的綜合系統,為所有監控、偵測和警報功能提供基礎。
定義
詞彙 | 定義 |
---|---|
記錄檔 | 記錄系統事件。 紀錄可以包含結構化或自由格式文字格式的不同類型的資料。 內容包含一個時間戳記。 |
計量 | 定期收集的數值。 計量描述了特定時間系統的某些方面。 |
關鍵設計原則
若要為您的工作負載實施全面的監控系統設計,請遵循以下核心原則:
只要切實可行,就利用平台提供的監控工具,這些工具通常不需要太多設定,並且可以提供對工作負載的深入了解,而這些深入了解原本可能很難獲得。
從整個工作負載堆疊收集紀錄和指標。 所有低程式碼和程式碼優先元件和資源都應設定為產生標準化、有意義的資料,並且需要收集這些資料。
將收集到的資料儲存在標準化、可靠且安全的儲存解決方案中。
處理儲存的資料,以便可以透過分析和視覺化解決方案進行處理。
分析處理後的資料以準確確定工作負載的狀態。
在有意義的儀表板或報告中為工作負載團隊和其他利害關係人視覺化工作負載的狀態。
設定可動作的警報和其他對智慧定義的閾值的自動回應,以便在出現問題時通知工作負載團隊。
將監控和警報系統納入您的整體工作負載測試做法中。
確保監控和警報系統處於持續改進的範圍內。 生產中的應用程式和配置行為提供了持續學習的機會。 將這些經驗教訓納入監控和警報設計中。
將您收集和分析的監控資料與您的系統和使用者流程連結起來,以將流程的運作狀況與資料以及工作負載的整體運作狀況關聯起來。 從流程的角度分析資料有助於使您的可觀察性策略與運作狀況模型保持一致。
最大限度地減少任何可識別資訊的儲存內容,以確保您遵守法律法規。 如果您需要儲存可識別訊息,請確保在設計解決方案時考慮到允許個人請求刪除其資訊的要求。
切勿記錄使用者密碼或其他可能用於實施身分詐欺的資訊。 在儲存資料之前從資料中清除這些詳細資訊。 監管要求可能規定需要存檔和保存為審計和安全而收集的資訊。 這些資料也是敏感的,可能需要加密或以其他方式保護以防止篡改。
您應該盡可能地自動化監控系統的所有功能,並且它們都應該全天、每天連續運作。
此工作流程管道說明了監控系統:
集合
您應該設定所有工作負載元件 (無論它們是低程式碼還是程式碼優先元件,還是環境和原則等平台設定),以擷取遙測和事件 (如記錄和指標)。
紀錄主要用於偵測和調查異常情況。 通常,記錄由工作負載元件生成,然後發送到監控平台或由監控平台自動提取。
指標主要用於建立健康模型和識別工作負載效能和可靠性的趨勢。 指標對於識別使用者使用行為的趨勢也很有用。 這些趨勢可以幫助從客戶的角度指導有關改進的決策。 通常,指標是在監控平台中定義的,監控平台和其他工具會輪詢工作負載以擷取指標。
工作負載資料
使用開箱即用的 Application Insights 整合來收集資料。 啟用 Application Insights 後,您可以清楚地了解即時和歷史的重要事件。
應用程式記錄支援端到端應用程式生命週期。 日誌記錄對於了解應用程式在各種環境中如何運作、發生哪些事件以及事件發生的條件至關重要。
我們建議您收集所有主要環境中的應用程式紀錄和事件。 如果可行的話,透過為每個環境使用不同的資料儲存來盡可能地分離環境之間的資料。 使用篩選器確保非關鍵環境不會使生產紀錄的解釋變得複雜。 最後,應用程式中的相應紀錄條目應擷取其各自事務的相關識別碼。
基礎架構和配置資料
對於工作負載中的基礎架構資源,請確保收集紀錄和指標。 由於 Power Platform 是一種平台即服務 (PaaS) 產品,因此您擷取與底層基礎結構相關的記錄的能力可能會受到限制。 但是,您可以擷取與工作負載執行狀況和事件相關的配置和策略變更的紀錄和分析。
盡可能從您的雲端平台收集紀錄。 您也許能夠收集訂閱的活動記錄和管理層面的診斷紀錄。
效能考量
複雜且高度可擴展的應用程式可能會產生大量資料。 資料量可能會導致效能問題,具體取決於應用程式層級追蹤的詳細程度。 遙測解決方案不能成為瓶頸,並且必須隨著系統的擴展而具有可擴展性。
分析
從各種來源收集資料後,對其進行分析以評估系統的整體運作狀況。 為了進行此分析,請清楚了解:
- 如何根據關鍵效能指標 (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。 例如,您可以監控雲端流程執行並為雲端流程執行失敗建立警示。
從您的 Microsoft Copilot Studio代理程式擷取遙測資料,以供在 Azure Application Insights 中使用。 您可以使用此遙測來監控發送和來自代理程式的記錄訊息和事件、使用者對話期間觸發的主題,以及可以從您的主題發送的自訂遙測事件。
Power Platform 資源會記錄 Microsoft Purview 合規性入口網站中的活動。 大多數活動在活動開始後 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 Power BI 儀表板深入了解您的 Microsoft Power Platform 採用情況。
Power Platform自動化套件是一套工具,可加速電腦版 Power Automate 自動化專案的使用及支援。 套件提供工具,可協助您管理自動化專案並監控,以估計已儲存和投資回報 (ROI)。 自動化套件的一部分是控制中心,它補充了監控桌面流程執行功能。 控制中心的重點是一個流程協調檢視,供支援分析師和組織在必要時進行監視、採取動作和發出警報。