Tableau Prep Builder 疑難排解

本文列出了您在使用 Tableau Prep Builder 時可能遇到的問題以及有關如何解決這些問題的建議。

對流程問題進行疑難排解時,無論是為自己偵錯還是聯絡支援人員,您通常都需要收集記錄檔和損毀傾印檔案以進行分析,並記錄重現錯誤所需的步驟。提供在錯誤發生前採取的確切步驟以及流程檔案,是幫助開發人員或支援團隊診斷問題的最佳方式。

正在收集記錄檔和損毀傾印檔案

Tableau Prep 記錄檔儲存在「我的 Tableau Prep 存放庫」資料夾中。預設情況下,該位置為:

Windows: C:\Users\<username>\Documents\My Tableau Prep Repository\Logs.

MacOS: /users/<username>/Documents/My Tableau Prep Repository/Logs

要正確診斷問題,需要收集所有記錄檔。如果執行的是 Tableau Prep Builder,這就是「我的 Tableau Prep 存放庫/記錄檔」資料夾中的所有內容。如果透過命令列執行 Tableau Prep,請包括來自「我的 Tableau Prep 存放庫/命令列存放庫/記錄檔」中的記錄檔。

下表說明所產生的不同記錄檔。

記錄檔檔案名稱產生記錄檔的程序描述
app.logTableau Prep.exe使用者介面記錄檔。這是由在電子處理序中運行的 JavaScript 代碼產生的。
backendProcessManager.logTableau Prep.exe這是由啟動並監控 Java 處理序的 JavaScript 代碼所產生的。

preprestapi.log

Java.exe

這是 Java 程式碼產生的記錄檔。有關 REST API 使用、編譯、快取管理以及 tabminerva(先前稱為 prepservice)程序的啟動和關閉的記錄項目應位於此處。

log.txt

prepservice.exe

tabminerva.exe

此記錄檔由 C++ 程式碼產生。

此記錄檔包括與 Tableau 共用技術堆疊的所有互動,包括與資料庫的連線、查詢、執行、外部快取、查詢管道、協定等。

tdeserver.txttdeserver64.exe

這是舊 Tableau 資料引擎建立的記錄檔。Tableau Prep 仍使用 Tableau 資料引擎。

tabprotosrv.txttabprotosrv.exe

通訊協定伺服器記錄檔。任何使用託管資料庫驅動程式的內容都將在此檔案中產生記錄行。

hyperd.loghyperd.exe

Hyper 記錄檔。此處包含查詢及與查詢相關的錯誤。

啟用查詢記錄

從 Tableau Prep Builder 版本 2026.2 開始,可以在說明>設定和效能功能表下開啟啟用查詢記錄設定,而無需重新啟動應用程式。開啟時,此設定會為 Tableau Prep Builder 執行的每個查詢產生一個 XML 查詢檔案。這在診斷流程問題時很有幫助。記錄檔會產生並儲存在查詢資料夾中。

Tableau Prep 中的說明功能表,顯示設定和效能功能表選項。

可以在以下目錄中找到這些查詢記錄檔:

Windows: C:\Users\<username>\Documents\My Tableau Prep Repository\Query

MacOS: /users/<username>/Documents/My Tableau Prep Repository/Query

執行 LogShark

LogShark 是一個免費的開源命令列公用程式,可以使用它從 Prep 記錄檔中擷取資訊以進行疑難排解並深入了解錯誤和使用情況。使用 LogShark Prep.twbx 外掛程式,可以產生帶有錯誤和流程儀表板的工作簿,以幫助分析和視覺化 Prep 問題。

有關安裝和執行 LogShark 的資訊,請參閱為電腦設定 LogShark

建立損毀傾印檔案

除了記錄檔之外,還要收集損毀傾印檔案。此處可能詳細說明記錄檔中未包含的任何內容,這些資訊可在查詢 .hyper 時對應用程式啟動、例外狀況或問題進行疑難排解時有所幫助。

建立損毀傾印檔案時,為以下處理序建立這些檔案很有用。

處理序描述
tabminerva.exe(先前為 prepservice.exe)這是承載 Tableau Prep 商務邏輯其餘部分的原生程序。這個程序也包含共用的 Tableau 原生技術,包括資料庫連接器。
hyperd.exe這是 Hyper 資料庫處理序。查詢失敗的任何時候。發生故障時,hyper 的損毀傾印可能很有用,因為 Tableau Prep 所做的大部分工作都涉及對 hyper 的查詢。

若要建立損毀傾印檔案,請根據作業系統執行以下動作。

Windows

  1. 開啟「工作管理員」。

  2. 右鍵按一下欄標題,然後選取處理序名稱命令列。這將顯示不同的處理序,並使您能夠選取要用於建立損毀傾印檔案的處理序。

  3. 以右鍵按一下 tabminerva.exe 處理序(先前為 prepservice.exe)。

  4. 選取「建立傾印檔案」。

    將開啟一個對話方塊,並顯示損毀傾印檔案在系統上的位置。

MacOS

在 MacOS 上,有兩種類型的診斷檔案可用於對 Tableau Prep 進行疑難排解:

  • 損毀報告 — 記錄損毀時的呼叫堆疊,類似於堆疊追蹤。

  • 核心檔案 — 終止時處理序記憶體的完整快照。

兩者都需要終止 Tableau Prep 程序。收集這些檔案後,將需要重新啟動 Tableau Prep。

必要條件:核心檔案收集需要管理員存取權。

步驟 1:建立損毀報告

  1. 開啟終端機。

  2. 執行命令: pgrep tabminerva | xargs kill -SEGV

    這會透過向 tabminerva.exe 處理序傳送分割錯誤訊號來終止該處理序,從而導致 MacOS 自動產生損毀報告。

  3. 在以下位置尋找儲存的損毀報告: ~/Library/Logs/DiagnosticReports/

    檔案名稱採用 tabminerva_YYYY-MM-DD-HHMMSS_machinename.crash 或 tabminerva_YYYY-MM-DD-HHMMSS_machinename.ips 格式

將此檔案傳送給 Tableau 支援或開發團隊時,請務必說明您有意傳送區隔錯誤訊號以產生報告。這將其與真正的毀損區分開來。

步驟 2:建立核心檔案

建立核心檔案時,使用以下選項之一。

建立核心檔案並終止 Tableau Prep 工作階段

  1. 開啟終端機。

  2. 執行命令 sudo chmod 1777 /cores 以授予對核心檔案目錄的寫入存取權限。

  3. 執行命令 ulimit -c unlimited 以移除目前終端工作階段的核心檔案大小限制。

  4. 執行命令 pgrep tabminerva | xargs kill -SEGV 以終止程序並產生核心檔案。

  5. /cores/ 中找到核心檔案,並將其命名為 core.<process_id>

建立核心檔案並讓 Tableau Prep 保持執行

此選項使用 gcore 公用程式來捕獲執行中處理序的核心傾印而不結束它。此程序需要安裝 Xcode 命令列工具。若要檢查是否已安裝此選項,請開啟終端機並執行 Bash xcode-select --install

  1. 開啟終端機。

  2. 執行命令:sudo gcore -o /tmp/tabminerva.core $(pgrep tabminerva)

    這會將核心檔案儲存到 /tmp/tabminerva.core。Tableau Prep 會繼續正常執行。

使用命令列執行流程時的常見錯誤

您可以從命令列中執行流程來重新整理輸出檔案,而不是開啟 Tableau Prep Builder 以手動方式執行每個流程。儘管此過程可幫助提高流程的效率,但如果語法不正確,或者缺少連線或輸出位置的認證,則在執行此過程時會出現錯誤。

有關 Tableau Prep 中支援的所有命令列選項的清單,請參閱 Tableau Prep 命令列參考(連結在新視窗開啟)

下表描述了常見錯誤以及如何解決這些錯誤。有關如何從命令列中執行流程的資訊,請參閱透過命令列重新整理流程輸出檔案(連結在新視窗開啟)

錯誤原因如何修復
「Missing arguments」(缺少引數)缺少必需的命令列引數之一。使用「tableau-prep-cli -help」來查看命令列引數的清單。
「Unable to read the connections file.」(無法讀取連線檔案。)輸入連線的 credentials.json 檔案中的語法或格式存在錯誤。請檢查 .json 檔案中輸入連線的語法。有關詳情和範例,請參閱透過命令列重新整理流程輸出檔案(連結在新視窗開啟)

「There are errors in the flow.Unable to run the flow.

Check that the credentials .json file includes all required credentials.在 Tableau Prep Builder 中開啟流程以檢視錯誤詳情。」

輸入連線的 credentials.json 檔案中缺少認證,或者流程包含錯誤。

請檢查 .json 檔案是否具有所有連線的認證,並在 Tableau Prep Builder 中開啟流程檔案,確定流程中是否存在任何錯誤。

如果流程有錯誤,您必須修復這些錯誤並將流程重新發佈到 Tableau Server,然後再次嘗試執行該過程。

「Could not find match for <hostname of inputConnections >」(找不到 <輸入連線的主機名稱> 的匹配項)Credentials.json 檔案缺少主機名稱(伺服器名稱)條目。

請確保 credentials.json 檔案包括主機名稱(伺服器名稱)的正確認證。

有關詳情和範例,請參閱透過命令列重新整理流程輸出檔案(連結在新視窗開啟)

「We don't have credentials of all connections in tfl/tflx file.The following connection(s) were not found: <hostname of inputConnections>」(tfl/tflx 檔案中沒有所有連線的認證。找不到以下連線:<輸入連線的主機名稱>)credentials.json 檔案缺失,或包含對於錯誤訊息中顯示的主機名稱(伺服器名稱)而言不正確的認證。

請確保 credentials.json 檔案包括錯誤訊息中所列主機名稱(伺服器名稱)的正確認證。

有關詳情和範例,請參閱透過命令列重新整理流程輸出檔案

「Error signing in server <serverUrl> as a user <userName>.Please check the credentials.」(以使用者 <使用者名> 登入到伺服器 <伺服器 URL> 時出錯。請檢查認證。)credentials.json 檔案包含的認證對於 Tableau Server 不正確。

請確保 credentials.json 檔案包括適用於輸出連線的所有正確認證和元素。

有關詳情和範例,請參閱透過命令列重新整理流程輸出檔案

「Could not sign in successfully as <userName> to server <serverUrl>(<contentUrl>)」(無法以 <使用者名> 成功登入到伺服器 <伺服器 URL>(<內容 URL>))credentials.json 檔案包含的認證對於 Tableau Server 不正確。

請確保 credentials.json 檔案包括適用於輸出連線的所有正確認證和元素。

有關詳情和範例,請參閱透過命令列重新整理流程輸出檔案

「We don't have credentials for Tableau Server to publish extract for one or more output nodes in tfl/tflx file.」(tfl/tflx 檔案中沒有用於為一個或多個輸出節點發佈擷取的 Tableau Server 認證。)credentials.json 檔案未作為命令列引數傳入,或者其缺少輸出連線的認證。

請確保在命令列中包括 credentials.json 檔案的路徑,並驗證 credentials.json 檔案是否包括適用於輸出連線的所有正確認證和元素。

有關詳情和範例,請參閱透過命令列重新整理流程輸出檔案

「Loom rest api server not started」(Loom rest api 伺服器未啟動)安裝或環境設定不正確。

請確保正確安裝了 Tableau Prep Builder,並且您以管理員執行命令。

如需有關如何安裝 Tableau Prep Builder 的資訊,請參閱從使用者介面安裝 Tableau Desktop 或 Tableau Prep Builder(連結在新視窗開啟)

「Error.Flow file does not exist.」(錯誤。流程檔案不存在。)流程檔案的路徑不正確。請確保在命令列中包括流程檔的正確路徑。
「Error.Connections file does not exist.」(錯誤。連線檔案不存在。)credentials.json 檔案的路徑不正確。請確保在命令列中包括 credentials.json 檔案的正確路徑。
「找不到 <mapr01:5181><mapr02:5181>,<mapr03:5181> 相符項目」使用 ZooKeeper 連線到 Apache Drill 時,您必須指定特定的埠 ID。在命令列中包含指定「埠」:31010 的 credentials.json 檔案以用於輸入認證。

常見 Tableau Prep 錯誤

下表描述在使用 Tableau Prep 時可能遇到的一些常見錯誤以及可以嘗試的解決方案。

錯誤原因如何修復Knowledge 文章
無法連線到 Tableau Server。檢查伺服器是否正在執行以及 URL 是否正確。tableauErrorCode=0xD5A9A6F9; tableauStatusCode=UNAUTHENTICATED; exceptionName=VizportalAuthenticationExceptionProxy 或防火牆阻止 Tableau Prep Builder 的內嵌瀏覽器完成 Tableau Cloud 登入握手。

與 IT 部門合作,透過 Proxy 安全列出 Tableau Cloud URL。

從 Tableau Prep Builder 中登出並重新登出。

如果有自動 Proxy 設定指令碼,請驗證它是否在不提示輸入認證的情況下處理驗證。

在需要驗證的 Tableau Online 環境中無法從 Tableau Prep Builder 登入到 Tableau Online 需要驗證的 Proxy(連結在新視窗開啟)

所需的 SSL 憑證可能缺失或與 [serverhostname] 的 Tableau Server 憑證不相符。

在伺服器上執行流程時,也顯示為「找不到流程 ID 請求的憑證路徑」。

Tableau Server 上缺少 SSL 憑證鏈結檔案,或者執行 Tableau Prep Builder 的電腦上未安裝該鏈結檔案。在某些情況下,問題是由 AWS 負載平衡器使用不相容的 TLS 原則引起的。

請確保已將 SSL 憑證鏈檔案上傳到 Tableau Server。

在執行 Prep Builder 的電腦上安裝憑證(如果按兩下並選取「安裝憑證」會傳回「該檔案無效,無法用於以下內容:安全性憑證」,則憑證檔案本身可能格式錯誤。與 IT 合作匯出有效的鏈檔案。

如果落後於 AWS 負載平衡器,請將原則降級為 ELBSecurityPolicy-TLS-1-2-2017-01。

錯誤 - 所需的 SSL 憑證可能遺失或與 Tableau Server 憑證不相符 - 從 Tableau Prep 登入(連結在新視窗開啟)

由於基礎處理序意外停止,Tableau Prep Builder 已停止執行。如果問題仍然存在,請嘗試重新安裝產品。

這可能由多種因素觸發:VPN/網路設定(透過 Cato Network VPN 阻止本機主機通訊確認)、防毒幹擾或開啟特定 .tfl 檔案時連接埠檔案損壞。

附註:切勿將 Tableau Prep Builder 安裝在 Tableau Server 節點上。這是此錯誤的已知原因。

重新安裝、檢查 AV 排除、驗證本機主機 IPv4/IPv6 通訊

如果是 VPN 特定的,請使用備用 VPN 進行測試以進行隔離;讓網路團隊參與檢查 localhost 區塊

若繫結至特定 .tfl 檔案,請收集 Prep 記錄和 IPS 轉儲,以調查 tabminerva 程序當機

確保未在任何 Tableau Server 節點上安裝 Tableau Prep Builder。

錯誤:由於啟動 Tableau Prep 時基礎處理序意外停止,Tableau Prep 已停止執行(連結在新視窗開啟)
AqlProcessor evaluation failed:已取消 — 流程在樞紐步驟後失敗在樞紐步驟後變更樞紐欄的值時的已知問題。

注意:此修補檔適用於 2022.2 及更高版本。

升級到修補檔涵蓋的版本。

作為舊版本的解決方法,請避免在樞紐的下游步驟中修改樞紐的欄值。

錯誤:系統錯誤 - 與資料來源 (LoomDataSource) 通訊時發生錯誤 在樞紐步驟之後變更樞紐欄的值時發生(連結在新視窗開啟)
無法發佈資料來源」 — 流程在本機或輸出到 .hyper 檔案時成功執行,但在發佈到 Tableau Cloud 時失敗。由於臨時檔案大小超過 Tableau Cloud 限制,流程失敗。當流程因與記憶體相關的 SQL 錯誤(例如,大型 JOIN 作業)而失敗時,也會出現這種情況,這些錯誤僅在 Tableau Cloud 中出現,而不是在本機出現。

將輸出切換到本機 .hyper 檔案,以確認該問題是雲端特定的。

降低流程複雜性、分成更小的流程、移除未使用的欄或使用即時連線。

不適用
Prep Builder 無法在 Windows 上開啟;偵錯記錄顯示與相對暫存資料夾路徑相關的錯誤。

Windows TEMP 環境變數設定為相對路徑(例如 %USERPROFILE%\AppData\Local\Temp)或包含重複的路徑項目。

Tableau Prep Builder 需要絕對路徑。

驗證 Windows TEMP 環境變數是否設定為絕對路徑(例如 C:\Users[username]\AppData\Local\Temp

從 TEMP 變數中移除任何重複項目。

不適用
感謝您的意見反應!已成功提交您的意見回饋。謝謝!