檢視入口網站錯誤記錄
注意
自 2022 年 10 月 12 日起,Power Apps 入口網站為 Power Pages。 其他資訊:Microsoft Power Pages 現在已推出 (部落格)
我們很快就會遷移並將 Power Apps 入口網站文件與 Power Pages 文件併合。
入口網站管理員和開發人員使用 Power Apps 入口網站為其客戶建立網站。 開發人員經常在開發入口網站時進行問題偵錯。 為了幫助偵錯,您可以存取關於入口網站任何問題的詳細錯誤記錄。 有多種方式可以取得入口網站的錯誤記錄。
注意
Power Apps 入口網站錯誤記錄也適用於 Power Pages。 更多資訊:何謂 Power Pages
提示
若要了解本文中執行工作所需的角色,請參閱入口網站管理工作所需的管理員角色。
自訂錯誤
如果入口網站發生任何伺服器端例外狀況,預設會顯示自訂的錯誤頁面,其中包含方便使用的錯誤訊息。 若要設定錯誤訊息,請參閱顯示自訂錯誤訊息。
不過,為了達到偵錯目的,最好查看 ASP.NET 詳細錯誤頁面,也稱為黃色當機畫面 (YSOD)。 詳細錯誤頁面可協助您取得伺服器錯誤的完整堆疊。
若要啟用 YSOD,您必須在入口網站上停用自訂錯誤。
注意
建議您只在開發階段停用自訂錯誤,一旦開始實際運作,就啟用自訂錯誤。
關於自訂錯誤的其他資訊:顯示自訂錯誤頁面
停用自訂錯誤
如果入口網站發生任何伺服器端例外狀況,您可以停用入口網站的自訂錯誤,以顯示詳細的例外狀況訊息。
移至入口網站動作 > 停用自訂錯誤。
選取確認訊息中的停用。 自訂錯誤即將停用時,入口網站會重新啟動,並且無法使用。 停用自訂錯誤後,隨即會出現訊息。
啟用自訂錯誤
您可以啟用入口網站上的自訂錯誤,以顯示看起來非常專業的頁面,而不是 YSOD。 如果應用程式發生任何例外狀況,這個頁面會提供有意義的資訊。
移至入口網站動作 > 啟用自訂錯誤。
選取確認訊息中的啟用。 自訂錯誤即將啟用時,入口網站會重新啟動,並且無法使用。 啟用自訂錯誤後,隨即會出現訊息。
注意
- 如果您變更與入口網站連線的執行個體,自訂錯誤設定會設定為啟用。 如果需要,您必須再次停用自訂錯誤。
- 與入口網站連線的執行個體即將變更時,您不可啟用或停用自訂錯誤,否則會出現錯誤訊息。
顯示自訂錯誤訊息
您可以將入口網站設定為顯示專業外觀的自訂錯誤,而不顯示一般錯誤。
若要定義自訂錯誤,請使用內容片段 Portal Generic Error
。 此片段中定義的內容會顯示在錯誤頁面上。 此內容片段並非立即可用,您必須另外建立。 內容片段類型可以是文字或 HTML。 若要建立或編輯內容片段,請參閱使用內容程式碼片段自訂內容。
注意
如果在內容片段中撰寫了 Liquid 程式碼,則會略過程式碼,不予呈現。
啟用自訂錯誤時,訊息使用下列結構顯示在錯誤頁面上:
<Content Snippet
>
<Error ID
>
<Date and time
>
<Portal ID
>
以下是使用 HTML 類型內容片段的自訂錯誤訊息範例:
這是自訂錯誤,請按一下此處,以提交附帶錯誤螢幕擷取畫面的支援票證
注意
如果入口網站因無法連線至 Microsoft Dataverse 而未能擷取內容片段,或是 Dataverse 沒有提供片段,則會顯示錯誤。
存取入口網站錯誤記錄
開發並發行入口網站之後,您還得可以存取入口網站記錄,才能對客戶回報的問題進行偵錯。 若要存取記錄,請將入口網站設定為傳送所有應用程式錯誤至您所擁有的 Azure Blob 儲存體帳戶。 只要存取入口網站錯誤記錄,就可以有效率地回應客戶查詢,因為您擁有問題的詳細資料。 若要將入口網站錯誤記錄納入 Azure Blob 儲存體,您務必從 Power Apps 入口網站管理中心啟用診斷記錄。
注意
如果您變更與入口網站連線的 Dataverse 執行個體,就會停用診斷記錄。 您必須重新啟用診斷記錄。
啟用診斷記錄
移至入口網站動作 > 啟用診斷記錄。
在啟用診斷記錄視窗中輸入下列值:
- Azure Blob 儲存體服務的連接字串:要存放入口網站錯誤記錄的 Azure Blob 儲存體服務的 URL。 URL 的長度上限為 2048 個字元。 如果 URL 超過 2048 個字元,則會顯示錯誤訊息。 關於連接字串的其他資訊:設定 Azure 儲存體連接字串
- 選取保留期間:入口網站錯誤記錄要保留在二進位大型物件 (blob) 儲存體中的期間。 所選的期間過後,會刪除錯誤記錄。 您可以選取下列其中一個值:
- 一天
- 七天
- 30 天
- 60 天
- 90 天
- 180 天
- 永遠
保留期間預設為 30 天。
選取設定。
設定診斷記錄後,就會 Azure 儲存體帳戶中建立新的遙測記錄二進位大型物件 (blob) 容器,而且記錄會寫入存放於容器的 blob 檔案中。 下列螢幕擷取畫面顯示 Azure 儲存體總管中的遙測記錄 blob 容器:
診斷記錄啟用成功時,即可執行下列動作:
- 更新診斷記錄設定:可讓您更新或移除入口網站的診斷記錄設定。
- 停用診斷記錄設定:可讓您停用入口網站的診斷記錄設定。
更新診斷記錄
移至入口網站動作 > 更新診斷記錄設定。
在 [更新診斷記錄設定] 視窗中輸入下列值:
- 是否要更新 Azure Blob 儲存體服務的連接字串?:可讓您指定是否要更新 Azure Blob 儲存體服務的連接字串。 預設會選取此設定。
- Azure Blob 儲存體服務的連接字串:要存放入口網站錯誤記錄的 Azure Blob 儲存體服務的 URL。 URL 的長度上限可以有 2048 個字元。 如果 URL 超過 2048 個字元,則會顯示錯誤訊息。 只有在是否要更新 Azure Blob 儲存體服務的連接字串? 核取方塊已選取時,才會顯示這個欄位。 關於連接字串的其他資訊:設定 Azure 儲存體連接字串
- 選取保留期間:入口網站錯誤記錄要保留在二進位大型物件 (blob) 儲存體中的期間。 所選的期間過後,會刪除錯誤記錄。 您可以選取下列其中一個值:
- 一天
- 七天
- 30 天
- 60 天
- 90 天
- 180 天
- 永遠
保留期間預設為 30 天。
選取更新。
停用診斷記錄
移至入口網站動作 > 停用診斷記錄。
選取確認訊息中的停用。
顯示外掛程式錯誤
另一個經常在開發網站時發生的案例是在 Dataverse 環境中撰寫之自訂外掛程式及商務規則所產生的錯誤。 這些錯誤通常可以透過停用自訂錯誤或啟用診斷記錄來存取。 在某些情況下,直接在入口網站上顯示這些錯誤加快診斷問題會更快速。 您可以透過將入口網站設定為在入口網站畫面上顯示來自 Dataverse 的自訂外掛程式錯誤來完成此動作。
若要顯示自訂外掛程式錯誤,請建立網站設定 Site/EnableCustomPluginError
,並將其值設定為 True。 畫面上顯示的將會自訂外掛程式錯誤,而不是一般錯誤。 錯誤只會顯示外掛程式錯誤的訊息部分,而非完整堆疊追蹤。
以下是顯示自訂外掛程式錯誤的畫面:
- 清單
- 擷取記錄
- 基本表單
- Retrieve
- 建立/更新等動作
- 多步驟表單
- Retrieve
- 建立/更新等動作
如果此網站設定不存在,則預設視為 False,而且不顯示外掛程式錯誤。