監視和管理背景工作流程處理

若要監控和管理程序,您必須找出程序,評估狀態,並執行解決問題需要的任何動作。

監控背景工作流程

背景工作流程產生系統作業資料列以追蹤其狀態。 您可以在應用程式中的數個位置存取有關這些系統作業的資訊:

  • 設定>系統作業

    這會包括系統作業的所有類型。 您將需要以系統作業類型工作流程,篩選資料列。

  • 從背景工作流程處理

    開啟背景工作流程定義並移至程序工作階段索引標籤。這樣只會顯示這個背景工作流程的系統作業。

  • 從資料列

    您可以編輯資料表表單,以便導覽將包括背景程序關聯。 這會顯示在資料列的內容中已啟動的所有系統作業。

注意

如果非同步的系統作業 (工作流程) 連續失敗多次,則系統會開始延期更久、隔更長的時間間隔才執行該作業,讓系統管理員或應用程式製作者可以調查並解決問題。 當工作再次成功執行時,就會恢復正常執行。

對執行中背景工作流程的動作

當背景工作流程正在執行時,您有取消暫停延期工作流程選項。 如果您先前已暫停工作流程,您可以繼續它。

背景工作流程處理的狀態

檢視背景工作流程處理的清單時,任何個別處理程序都可能會有下列其中一個狀態狀態原因值:

狀態 狀態原因
就緒 等待資源
擱置 等待中
鎖定 進行中

暫停

正在取消
已完成 已成功

已失敗

已取消

刪除程序記錄資料列

如果您的組織使用經常執行的背景工作流程或商務程序流程,程序記錄資料列數量可能會大到導致效能問題,並耗用大量的儲存體。 如果執行其中一種標準大量資料列刪除作業所移除的不足夠,要刪除程序記錄資料列,您可以使用大量刪除系統作業功能來建立自訂的大量資料列刪除作業。

  1. 移至設定>資料管理>大量資料列刪除

  2. 大量資料列刪除的區域中,選取新增

  3. 大量刪除精靈起始頁面上,選取下一步

  4. 尋找 清單中,選取 系統作業

  5. 要刪除程序記錄資料列,請用下列條件來建立大量資料列刪除作業:

    • 系統作業類型等於工作流程。 這會以背景工作流程列為目標。
    • 狀態等於已完成。 只有已完成的工作流程才是執行此作業所針對的有效目標。
    • 狀態原因等於成功。 刪除成功、已取消和失敗的作業。
    • 完成日期超過 X 天 30。 使用完成時間資料欄,以僅刪除超過 30 天的背景工作流程處理序記錄檔資料列。

    顯示設定以建立大量行刪除作業的螢幕截圖。

  6. 選取下一步

  7. 設定大量刪除作業執行的頻率。 您可以將作業排程成按照設定的時間間隔執行,或使用立即選項建立一次大量刪除作業。 此範例會設定一個在 2018 年 5 月 21 日執行且之後每隔 30 天執行一次的定期作業。

    顯示大量列移除選項的螢幕截圖。

使用立即選項

請注意,您可以選取立即選項,選擇立即同步執行大量資料列刪除。 這項刪除作業是使用直接的 SQL Server 執行來執行,而不是透過刪除事件管道傳遞每一筆資料列;如此可以降低對系統效能的影響。 如果您想要快速清除額外的背景工作流程資料列,而不想在非同步佇列中等候處理大量刪除作業,這會是個不錯的選項。

下列條件成立時,會啟用立即 選項:

  • 針對系統作業資料表進行大量刪除作業。
  • 搜尋準則中有系統作業類型等於工作流程的條件。
  • 建立大量刪除作業的使用者,具有對 AsyncOperation 資料表的全域深度刪除權限。 系統管理員資訊安全角色擁有此權限。

同步的大量刪除只會刪除已完成狀態的 AsyncOperation 資料列。 每次叫用時可處理最多 1 百萬筆資料列。 如果您環境中有超過 1 百萬筆要移除的資料列,則必須多次執行作業。

對問題進行疑難排解

在負責人變更之後,工作流程執行失敗

當工作流程負責人使用者已停用時,不再有執行工作流程的權限,或已由系統管理員變更,則先前開始的和仍處於等待狀態的執行會失敗,因為它們屬於先前的負責人。 在這種情況下,建議取消屬於先前負責人的等待執行狀態。 如果您的執行無法取消,且需要更新至新的負責人 (連絡人支援) [/power-platform/admin/get-help-support] 以取得協助。

下一個步驟

背景工作流程處理的最佳做法