注: 以下の翻訳の正確性は検証されていません。AIPを利用して英語版の原文から機械的に翻訳されたものです。
Foundry でデータ変換コードを作成する際には、ジョブが開始時または途中で失敗するケースに遭遇することがあります。このページでは、失敗するジョブのデバッグ用の推奨ワークフローと、ジョブがなぜ失敗し始めたのかを理解するのに役立つ Foundry のツールについて説明しています。
以下のグラフは、トランスフォームジョブの失敗をデバッグするための推奨ワークフローを示しています。
_driver.log
> Downloadを選択します。Job Comparison ツールを使用すると、現在のジョブと前回成功したジョブの実行を比較することができます。これは、変更を調査し、ビルドの問題をトラブルシューティングするのに便利です。このツールは、出力トランザクションを持つ任意のジョブの Builds アプリケーション内のビルドレポートページからアクセスできます。Job Comparison ツールにアクセスするには、任意のジョブ行の "Compare" ボタンをクリックします:
このタブでは、ジョブ中に発生した変更の概要が提供されます。任意のデータセットをクリックすると、新しいタブが開き、Dataset アプリの Compare ツールでトランザクションの変更を探索します。リポジトリをクリックすると、ブラウザがジョブが行われたコミット時のソースリポジトリにリダイレクトされ、このジョブの出力に関連するファイルだけでなく、リポジトリ全体の探索が可能になります。
このタブでは、入力データセットの変更の概要が提供され、メタデータ、スキーマ、統計の変更が強調表示されます。データセットが注目すべき列の変更を持っている場合、その行を選択すると、その変更の概要が展開します。詳細な変更を探索するためには、任意のデータセットを選択すると、詳細な比較のために Dataset アプリにリダイレクトされます。
コードの変更では、このジョブの実行と前回成功した実行の間でコードに何か変更があったかを強調表示します。詳細については、ソースリポジトリにリダイレクトするボタンが提供されています(ソースが Code Repositories の場合のみ利用可能)。コードの差分は、コードリポジトリまたは Code Workbook を基にした任意のジョブで利用できます。
ビルドがハングアップした場合は、上記のワークフローに従ってください。これが初めてのジョブの実行であれば、ビルドがハングアップしているのはユーザーコードが原因である可能性が高いです。
失敗したジョブとの重要な違いは、ビルドがキャンセルされるとドライバーログが失われることです。ビルドをキャンセルする前にストリームドライバーログをダウンロードします。これは、Logs > _driver.log
> Downloadを選択することで行えます。また、Spark details の Executors > Snapshot で実行中のビルドのスナップショットを取ることもできます。これらにより、ビルドがキャンセルされた後にハングアップしたビルドのトラブルシューティングが可能になります。
スタックに AIP が有効になっている場合、AI error enhancer widget は、問題の理解と解決を助けるために、失敗したジョブの詳細ビューを補完します。