Tableau Prep Builder のトラブルシューティング

この記事では、Tableau Prep Builder を使用しているときに発生する可能性がある問題と、その解決方法の提案を説明しています。

フローの問題をトラブルシューティングする場合、自分でデバッグする場合でも、サポートへ問い合わせる場合でも、通常、分析のためにログ ファイルとクラッシュ ダンプ ファイルを収集するとともに、エラーを再現するための手順を文書化しておく必要があります。エラーが発生する前に実行した正確な手順やフロー ファイルを提供することは、開発者やサポート チームが問題を診断するうえで最も効果的な方法です。

ログ ファイルとクラッシュ ダンプ ファイルの収集

Tableau Prep のログ ファイルは、My Tableau Prep Repository フォルダーに保存されます。デフォルトでは、場所は次のとおりです。

Windows の場合: C:\Users\<username>\Documents\My Tableau Prep Repository\Logs

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

問題を正しく診断するには、すべてのログ ファイルを収集する必要があります。Tableau Prep Builder を実行している場合は、`My Tableau Prep Repository/Logs` フォルダー内にあるすべてのものが対象となります。Tableau Prep をコマンド ラインから実行している場合は、「My Tableau Prep Repository/Command Line Repository/Logs」にあるログ ファイルも含めてください。

この表では、生成されるさまざまなログ ファイルについて説明します。

ログ ファイル名 ログ ファイルを生成するプロセス 説明
app.log Tableau Prep.exe ユーザーインターフェイス ログ ファイル。これは、Electron プロセスで実行されている JavaScript コードによって生成されます。
backendProcessManager.log Tableau Prep.exe これは、Java プロセスを起動して監視する JavaScript コードによって生成されるものです。

preprestapi.log

Java.exe

これは Java コードによって生成されたログ ファイルです。rest api の使用、コンパイル、キャッシュ管理、および tabminerva (旧 prepservice) プロセスの起動とシャットダウンに関するログ エントリは、こちらにあります。

log.txt

prepservice.exe

tabminerva.exe

このログは C++ コードで生成されます。

このログには、データベースへの接続、クエリ、実行、外部キャッシュ、クエリ パイプライン、プロトコルなど、Tableau の共有テクノロジー スタックとのすべてのやり取りが含まれます。

tdeserver.txt tdeserver64.exe

これは、古い Tableau データ エンジンによって作成されたログファイルです。Tableau Prep では引き続き Tableau データエンジンを使用します。

tabprotosrv.txt tabprotosrv.exe

プロトコル サーバーのログ。ホスティングされているデータベース ドライバーを使用すると、このファイルにログ行が生成されます。

hyperd.log hyperd.exe

ハイパーログ。クエリおよびクエリに関連するエラーは、ここにあります。

クエリ ログを有効にする

Tableau Prep Builder バージョン 2026.2 以降では、アプリケーションを再起動することなく、[ヘルプ] > [設定とパフォーマンス] メニューで [クエリ ログを有効にする] 設定をオンにできます。この設定をオンにすると、Tableau Prep Builder が実行するクエリごとに XML クエリ ファイルが生成されます。フローの問題を診断する際に役立ちます。ログは生成され、`Query` フォルダーに格納されます。

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 のインストールと実行の詳細については、「Get your Computer Set Up for 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 のトラブルシューティングに役立つ 2 種類の診断ファイルがあります。

  • クラッシュ レポート — スタック トレースと同様に、クラッシュ時のコール スタックを記録します。

  • コアファイル — 終了時にプロセスのメモリを完全にスナップショットしたものです。

いずれの場合も、Tableau Prep プロセスを終了する必要があります。これらのファイルを収集した後、Tableau Prep を再起動する必要があります。

前提条件: コア ファイルの収集には管理者アクセスが必要です。

Step 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 Command Line Reference」(新しいウィンドウでリンクが開く)を参照してください。

次の表では、一般的なエラーとその解決方法について説明しています。コマンド ラインからフローを実行する方法については、コマンド ラインからフロー出力ファイルを更新(新しいウィンドウでリンクが開く)を参照してください。

エラー 原因 修正方法
"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.Open the flow in Tableau Prep to view error details. (フローにエラーがあります。フローを実行できません。credentials.json ファイルに必要な認証資格情報がすべて含まれていることを確認してください。エラーの詳細を表示するには、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 ファイルにすべての接続の認証資格情報がありません。次の接続が見つかりませんでした: <入力接続のホスト名>)" 認証資格情報.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. (Tableau Server が 1 つ以上の出力ノード用に抽出をパブリッシュするための認証資格情報が tfl/tflx ファイルにありません。)" 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 ファイルへの正しいパスがコマンド ラインに含まれていることを確認してください。
"Could not find match for <mapr01:5181>,<mapr02:5181>,<mapr03:5181> (<mapr01:5181>、<mapr02:5181>、<mapr03:5181> と一致するものが見つかりませんでした。)" ZooKeeper を使用して Apache Drill に接続している場合は、特定のポート ID を指定する必要があります。 入力の認証資格情報として "port: 31010" を指定した credentials.json ファイルをコマンド ラインに含めてください。

Tableau Prep の一般的なエラー

次の表に、Tableau Prep の使用時に発生する可能性のある一般的なエラーと、その解決策を示します。

エラー 原因 修正方法 ナレッジ アーティクル
Tableau Server に接続できません。サーバーが実行中であることと、URL が正しいことを確認してください。tableauErrorCode=0xD5A9A6F9; tableauStatusCode=UNAUTHENTICATED; exceptionName=VizportalAuthenticationException プロキシまたはファイアウォールが原因で、Tableau Prep Builder の埋め込みブラウザーが Tableau Cloud ログイン ハンドシェイクを完了できません。

IT 部門と協力して、プロキシ経由で Tableau Cloud の URL を許可リストに登録します。

Tableau Prep Builder 内でサインアウトしてから、再度サインインします。

自動プロキシ構成スクリプトが導入されている場合は、認証資格情報を要求せずに認証が処理されることを確認します。

認証が必要なプロキシ環境で、Tableau Prep Builder から Tableau Online にサインインできない(新しいウィンドウでリンクが開く)

必要な SSL 証明書がないか、[serverhostname] の Tableau Server 証明書と一致しない可能性があります。

サーバーでフローを実行すると、「Unable to find requested certificate path for flow ID」と表示されることもあります。

Tableau Server に SSL 証明書チェーン ファイルがないか、Tableau Prep Builder を実行しているマシンにチェーン ファイルがインストールされていません。場合によっては、互換性のない TLS ポリシーを使用している AWS ロード バランサーが原因で問題が発生します。

SSL 証明書のチェーン ファイルが Tableau Server にアップロードされていることを確認してください。

Prep Builder を実行しているマシンに証明書をインストールします (ダブルクリックして [証明書のインストール] を選択したときに "The file is invalid for use as the following: Security Certificate" というエラーが返された場合は、証明書ファイル自体の形式が正しくない可能性があります)。IT 部門と連携し、有効なチェーン ファイルをエクスポートします。

AWS ロードバランサーの背後にある場合は、ポリシーを「ELBSecurityPolicy-TLS-1-2-2017-01」にダウングレードします。

エラー - 必要な SSL 証明書が見つからないか、Tableau Server 証明書と一致しない可能性があります - Tableau Prep からサインインしています(新しいウィンドウでリンクが開く)

Tableau Prep Builder は、基盤となるプロセスが予期せず停止したため、実行を停止しました。問題が解決しない場合は、製品を再インストールしてください。

これは、VPN/ネットワーク設定 (Cato Network VPN が localhost 通信をブロックしている状態で確認済み)、ウイルス対策の干渉、または特定の.tfl ファイルを開いたときのポート ファイルの破損など、複数の要因によって引き起こされる可能性があります。

: Tableau Prep Builder は、Tableau Server ノードにインストールしないでください。これはこのエラーの既知の原因です。

再インストールし、AV 除外を確認し、localhost IPv4/IPv6 通信を検証します。

VPN 固有の問題である場合は、別の VPN でテストして問題を切り分けます。ネットワーク チームに連絡して localhost のブロックを確認してください。

特定の .tfl ファイルに関連付けられている場合は、Prep のログと IPS ダンプを収集して、tabminerva プロセスのクラッシュを調査します

Tableau Prep Builder が Tableau Server のどのノードにもインストールされていないことを確認します。

エラー: Tableau Prep の起動時に基盤となるプロセスが予期せず停止したため、Tableau Prep の実行が停止されました(新しいウィンドウでリンクが開く)
AqlProcessor evaluation failed: Canceled" — ピボット ステップの後にフローが失敗する ピボット ステップの後にピボットした列の値を変更する場合の既知の問題。

注: この修正は 2022.2 以降のバージョンに適用されます。

修正プログラムが適用されるバージョンにアップグレードしてください。

古いバージョンでの回避策として、ピボットのダウンストリームのステップでは、ピボット処理された列の値を変更しないようにします。

Error: System error - An error occurred while communicating with data source (LoomDataSource) は、ピボット ステップの後にピボットされた列の値を変更すると発生します(新しいウィンドウでリンクが開く)
「データ ソースをパブリッシュできません」 — フローは、ローカルで実行する場合や .hyper ファイルに出力する場合は正常に実行されますが、Tableau Cloud にパブリッシュする際には失敗します。 一時ファイルのサイズが Tableau Cloud の制限を超えているため、フローが失敗します。また、メモリ関連の SQL エラー (大規模な JOIN 操作など) でフローが失敗し、そのエラーがローカルでは発生せず Tableau Cloud でのみ発生する場合にも見られます。

出力をローカルの .hyper ファイルに切り替えて、問題がクラウド固有のものであることを確認してください。

フローの複雑さを軽減するか、フローを小さなフローに分割するか、未使用の列を削除するか、ライブ接続を使用します。

N/A
Windows で Prep Builder が開かず、デバッグ ログに相対一時フォルダー パスに関連するエラーが表示されます。

Windows TEMP 環境変数が相対パス (例: %USERPROFILE%\AppData\Local\Temp) に設定されているか、重複するパス エントリが含まれています。

Tableau Prep Builder には絶対パスが必要です。

Windows TEMP 環境変数が絶対パス (例: C:\Users[username]\AppData\Local\Temp) に設定されていることを確認します。

TEMP 変数から重複エントリを削除します。

N/A
フィードバックをお送りいただき、ありがとうございます。フィードバックは正常に送信されました。ありがとうございます!