次の方法で共有


Init スクリプト ログ記録

Init スクリプトの開始イベントと終了イベントは、クラスター イベント ログにキャプチャされます。 詳細はクラスター ログにキャプチャされます。 グローバル init スクリプトの作成、編集、および削除イベントは、アカウント レベルの診断ログにもキャプチャされます。

Init スクリプトのイベント

クラスター イベント ログでは、INIT_SCRIPTS_STARTEDINIT_SCRIPTS_FINISHED という 2 つの init スクリプト イベントがキャプチャされ、実行がスケジュールされ、正常に完了したスクリプトが示されます。 INIT_SCRIPTS_FINISHED は実行期間もキャプチャします。

グローバル init スクリプトはログ イベントの詳細にキー "global" によって示され、クラスター スコープの init スクリプトはキー "cluster" によって示されます。

注意

クラスター イベント ログは、各クラスター ノードの init スクリプト イベントをログに記録しません。すべてのノードを表すノードは 1 つしか選択されません。

init スクリプト ログはどこに書き込まれますか?

クラスターのログ配信がクラスターに対して構成されている場合、init スクリプト ログは /<cluster-log-path>/<cluster-id>/init_scripts に書き込まれます。

クラスター内の各コンテナーのログは、init_scripts/<cluster-id>_<container-ip> というサブディレクトリに書き込まれます。

たとえば、cluster-log-pathcluster-logs に設定されている場合、特定のコンテナーのログへのパスは dbfs:/cluster-logs/<cluster-id>/init_scripts/<cluster-id>_<container-ip> のようになります。

DBFS にログを書き込むクラスターが構成されている場合は、ファイル システム ユーティリティ (dbutils.fs) または DBFS CLI (レガシ) を使用してログを表示できます。 たとえば、クラスター ID が 1001-234039-abcde739 の場合は以下のようになります。

dbfs ls dbfs:/cluster-logs/1001-234039-abcde739/init_scripts
1001-234039-abcde739_10_97_225_166
1001-234039-abcde739_10_97_231_88
1001-234039-abcde739_10_97_244_199
dbfs ls dbfs:/cluster-logs/1001-234039-abcde739/init_scripts/1001-234039-abcde739_10_97_225_166
<timestamp>_<log-id>_<init-script-name>.sh.stderr.log
<timestamp>_<log-id>_<init-script-name>.sh.stdout.log

クラスター ログ配信が構成されていない場合、ログは /databricks/init_scripts に書き込まれます。 ノートブックで標準シェル コマンドを使用して、ログを一覧表示および表示できます。

%sh
ls /databricks/init_scripts/
cat /databricks/init_scripts/<timestamp>_<log-id>_<init-script-name>.sh.stdout.log

クラスターが起動するたびに、init スクリプト ログ フォルダーにログが書き込まれます。

重要

クラスターを作成し、クラスター ログ配信を有効にするユーザーは、グローバル init スクリプトの stderr および stdout 出力を表示できます。 グローバル init スクリプトで機密情報が出力されていないことを確認する必要があります。

診断ログの Init スクリプト イベント

Azure Databricks 診断ログでは、イベントの種類 globalInitScripts の下にあるグローバル init スクリプトの作成、編集、および削除イベントがキャプチャされます。 「グローバル init スクリプト イベント」を参照してください。