共用方式為


管理 Dataverse 中的雲端流程執行歷程記錄 (預覽版)

[本文章是發行前版本文件,隨時可能變更。]

透過 Dataverse 中的雲端流程執行歷程記錄,您可以套用 Dataverse 的可擴充性來大規模追蹤雲端流程執行的結果。 透過此功能,您可以使用 Dataverse 通用資料架構 (包括角色型存取控制 (RBAC)) 的強大功能來管理 FlowRun 資料。 只有在 Dataverse 中定義的解決方案雲端流程才能將其執行歷程記錄儲存在 Dataverse 中。

做為此功能的一部分,每個雲端流程執行在 FlowRun 表中都有一個項目。 此功能使用 Dataverse 的非關聯式資料庫、彈性表來儲存雲端流程執行歷程記錄。

自動化中心使用 Dataverse 中的雲端流程執行歷程記錄來為整個 Power Automate 的自動化流程提供全面的監控和疑難排解體驗。

重要

  • 這是預覽功能。
  • 預覽功能不供生產時使用,而且可能功能受限。 這些功能是在正式發行前先行推出,讓客戶能夠搶先體驗並提供意見反應。
  • 此功能正在逐步推出,尚未在主權雲端區域中提供。

雲端流程執行元素

FlowRun 表包含雲端流程執行的關鍵元素,包括以下內容:

元素 描述
姓名 流程執行的主索引鍵和邏輯應用程式識別碼。
開始時間 當雲端流程執行觸發時。
結束時間 當雲端執行完成時。
執行持續時間 雲端流程完成執行的時間 (以秒為單位)。
執行狀態 流程執行的最終結果 (成功失敗取消)。
觸發程序類型 此流程執行的觸發類型 (自動計劃手動)。
錯誤碼 流程執行傳回的錯誤代碼。
錯誤訊息 從流程執行傳回的詳細錯誤訊息 (如果適用)。
所有人 流程的擁有者。
工作流程名稱 雲端流程的顯示名稱。
工作流程識別碼 特定雲端流程的 WorkflowID,
為主要 二進位值,表示此流程執行是否有任何上層雲端流程觸發它。
上層執行識別碼 上層雲端流程執行執行個體的名稱 (如果此記錄適用於下層流程)。
分割識別碼 此使用者在彈性表執行個體中的分區識別碼。
存留時間 自動刪除該執行記錄的時間 (以秒為單位)。

您可以透過標準 Dataverse APIDataverse 連接器,或直接從 Maker Portal 中的資料表檢視查看和更新詳細資訊。

由於此功能是基於彈性表建置,因此我們將雲端執行歷程記錄資料儲存在特定邏輯分區中以最佳化效能。 執行歷程記錄根據使用者進行分區,因此組織中的每個使用者都有一個專用分區。

FlowRun 資料使用 Dataverse 資料庫儲存容量可以在 Power Platform 系統管理中心監視跨環境的儲存體使用情況。

FlowRun 記錄的儲存體使用情況

預設情況下,流程執行資料會儲存 28 天 (2,419,200 秒)。 如果要修改可以儲存執行的持續時間,您可以在 Dataverse 支援的環境中更新組織表中的流程執行存留時間 (以秒為單位)。 根據您環境的儲存容量,您可以調整這些執行記錄的儲存長度。

可以在 PowerApps 資料表瀏覽器中或使用 Dataverse Web API 變更組織資料表中的 FlowRunTimeToLiveInSeconds 值

打開或減少雲端流程執行歷程記錄的儲存空間

如果組織資料表中的 FlowRunTimeToLiveInSeconds 值發生改變,則任何新 FlowRun 記錄的生命週期都會保留該時間長度。 隨著時間的推移,降低該值可以減少 FlowRun 記錄的數量和使用的儲存空間。

設定 FlowRun 在 Dataverse 中的存留時間

組織資料表中的 FlowRunTimeToLiveInSeconds 值設為零會停止擷取所有新 FlowRun 記錄。

設定 FlowRun 在 Power Platform 系統管理中心中的存留時間

可以在 Power Platform 系統管理中心環境體驗中設定組織表中的 FlowRunTimeToLiveInSeconds 值。 若要選擇在環境中所使用 FlowRun 實體的存留時間:

  1. 登入 Power Platform 系統管理中心
  2. 瀏覽至環境
  3. 對於所需的環境,請打開設定頁面。
  4. 選取 產品>功能
  5. Dataverse 中的雲端流程執行歷程記錄下,將 FlowRun 實體存留時間保留值設為 28 天 (預設值)、14 天、7 天或已停用。

設定自訂 TTL 值以存儲更長或更具體數量的雲端流程執行歷程記錄

如果您想要一個無法透過 Power Platform 系統管理中心體驗獲得的特定存留時間 (TTL) 值,則可以將該值直接設定為組織表中的 FlowRunTimeToLiveInSeconds 值

立即減少 FlowRun 記錄數量

如果環境儲存空間不足,則客戶可以選擇設定一組 FlowRun 記錄的 TTLInSeconds 值來清理資料庫空間。 然後,記錄會在一兩分鐘內自動清理並永久刪除。 請確認您不再需要這些記錄,因為它們一旦刪除就無法恢復。

存留時間 (TTL) 值計算

Organization.FlowRunTimeToLiveInSecondsFlowRun.TTLInSeconds 的存留時間 (TTL) 值以秒為單位指定。 下表包含可在 Organization 和 FlowRun 表中使用的常見值。

1 天 86,400 秒鐘
3 天 259,200 秒鐘
7 天 604,800 秒鐘
14 天 1,209,600 秒鐘
28 天 2,419,200 秒鐘
60 天 5,184,000 秒鐘

使用 FlowEvent 資料瞭解 FlowRun 資料完整性

由於多種原因,FlowRun 記錄可能不完整。 FlowEvent 表用於提供已跳過執行且資料集不完整的訊號。 缺乏訊號並不代表資料集是完整的。

您可以在 PowerApps 資料表瀏覽器中或使用 Dataverse Web API 查看 FlowEvent 記錄。 所有相關記錄的 FlowEvent.EventType 值為「FlowRunIngestion」,然後 FlowEvent.EventCode 值解釋該事件。

下表包含 FlowEvent.EventCode 值的清單,這些值可用來指示 FlowRun 資料不完整:

EventCode 原因
isFlowRunIngestionECSDisabled 由於服務設定,雲端流程執行歷程記錄不會儲存在 Dataverse 中,因此無法顯示雲端流程資料。 ECS 服務設定是自動設定的,管理員無法變更此狀態下的擷取行為。
TtlSettingEqual0 目前環境的雲端流程執行的 TTL (存留時間) 設定為不保留資料。 因此,可能會缺少某些雲端流程執行歷程記錄。 當 Organization.FlowRunTimeToLiveInSeconds 設定為零時,就會發生這種情況。
IngestionDisabledByOrgSettings 由於環境設定,雲端流程執行歷程記錄未儲存在 Dataverse 中,因此雲端流程的某些執行歷程記錄可能會遺失。 當 Organization.FlowRunTimeToLiveInSeconds 先前設定為零時,就會發生這種情況。
ElasticTableStorageCapacityReached 您已達到 Dataverse 儲存體容量限制,導致雲端流程執行資料同步暫停。
ElasticTablePartitionLimitReached 您已達到 Dataverse 儲存體分區限制,導致雲端流程執行資料同步暫停。
IngestionRateDataLoss 由於預覽期間此環境中的執行量很大,雲端流程的某些執行歷程記錄可能會遺失。
FlowRunsEventLoadingFailed 無法載入目前環境中的雲端流程執行事件。 因此,某些歷史雲端流程執行資料可能無法使用。
FlowRunsTTlSettingFailedMessage 無法擷取環境的雲端流程執行的 TTL (存留時間) 設定。 因此,某些歷史雲端流程執行資料可能無法使用。
ElasticTableNoRoleForUser 擁有一個或多個流程的使用者沒有 Dataverse 中 FlowRun 表的讀取權限,因此某些雲端流程執行歷程記錄不會儲存在 Dataverse 中。 因為無法將該使用者設定為擁有者。

已知限制

  • FlowRun 記錄在寫入資料表時會指派給特定擁有者,因此目前不支援共用流程的共用 FlowRun 記錄的概念。
  • 流程擁有者至少需要對 FlowRun 表具有讀取權限才能將其執行記錄儲存在 Dataverse 中。 系統將 FlowRun 記錄寫入資料表中,然後將擁有權指派給流程的主要擁有者。 如果流的主要擁有者沒有 FlowRun 表的讀取權限,則不會儲存 FlowRun 記錄,並且會在 FlowEvent 表中看到 ElasticTableNoRoleForUserFlowEvent.EventCode。 若要解決此問題,請確保流程擁有者具有 FlowRun 表讀取權限。
  • 目前,彈性表中每個分割區的大小限制為 20 GB。 一旦達到限制,僅針對該特定使用者的進一步執行記錄插入將會失敗。
  • 如果使用者有許多執行率較高的流程,FlowRun 記錄可能會受到限制並被跳過。 發生節流時,會在 FlowEvent 表中建立一個項目,以表示執行已被跳過且資料集不完整。

注意

用於支援雲端執行記錄插入的底層資料流程不是交易性的,因此不是 100% 無損的。 由於臨時的非重複性服務問題,該資料流上可能會發生少量資料缺失。 那些缺失的記錄不由 FlowEvent 表示。 Power Automate 入口網站中流程詳細資料中的流程執行歷史記錄是交易性的,因此可提供執行的無損檢視。

常見問題

為什麼我所有環境的 FlowRunTimeToLiveInSeconds 值都為零?

如果所有環境的組織表中的 FlowRunTimeToLiveInSeconds 值均為零,則可能是因為以下情況之一:

  1. 如果 FlowRun 資料不可用,則您的環境可能不會自動啟用 FlowRun 擷取,因為沒有足夠的 Dataverse 資料庫儲存體容量可用。
  2. 如果 FlowRun 資料先前可用,則管理員可能已關閉新記錄的擷取。

該功能何時正式發佈 (GA)?

目前,尚無將此功能從公開預覽版過渡到正式版 (GA) 的承諾時間表。 由於需要限制的架構和效能限制,FlowRun 歷史記錄可能存在間隙。 但是,我們了解完整流程執行歷史資料的重要性。 我們正在積極評估無損同步策略,以便我們將來能夠將此功能轉移到 GA 中。

此 FlowRun 資料由 Power Automate Maker Portal 中的自動化中心 (預覽版) 使用。 儘管 FlowRun 資料在預覽階段可能存在一定的差距,但讓這些資料可供公共預覽存取是有價值的,無論是作為獨立功能還是作為自動化中心的一部分。

將雲端流程執行歷程記錄寫入 Dataverse 是否使用 Power Platform 要求配額?

將雲端流程執行歷程記錄以 FlowRun 資料的形式寫入 Dataverse 不會計入 Power Platform 要求限制。 為讀取 FlowRun 資料而執行的 API 會計入 Power Platform 要求限制

此資料與 Application Insights 中可用的資料相比如何?

管理員可以設定 Application Insights 為提供來自 Power Automate 流程執行的監視資料。 Application Insights 資料是:

自動化中心