ジョブ実行に関するコンテキストをジョブタスクに渡す

動的値参照を使用すると、ジョブまたはタスクの名前、実行の識別子、ジョブ実行の開始時刻など、ジョブまたはタスクの実行に関するコンテキストを渡すことができます。 動的値参照は、ジョブ タスクの実行時に適切な値に置き換えられるテンプレート化された変数です。 ジョブ実行時、二重中括弧で囲まれたタスク課題変数が置き換えられ、値の一部として含まれるオプションの文字列値に追加されます。 たとえば、実行ジョブ ID 6 のいずれかに対して、値がmy-job-6MyJobIdという名前の課題を渡すには、次のタスク課題を追加します。

{
  "MyJobID": "my-job-{{job.id}}"
}

二重中括弧の内容は式として評価されないため、二重中括弧内で操作や関数を実行することはできません。

ユーザーが指定した識別子 (タスク名、タスク値キー、特殊文字を含むジョブ不安名など) は、識別子をバックティック ( ` ` ) で囲んでエスケープする必要があります。 エスケープせずに使用できるのは、英数字とアンダースコア文字のみです。

{
  "VariableWithSpecialChars": "{{job.parameters.`param$@`}}"
}

参照内の構文エラー (中括弧の欠落など) は無視され、値はリテラル文字列として扱われます。 たとえば、 {{my.value}文字列"{{my.value}"として渡されます。 ただし、既知の名前空間 ( {{job.naem}}など) に属する無効な参照を入力することは許可されていません。 既知の名前空間に属する無効な参照が UI に入力された場合は、エラー メッセージが表示されます。

タスクが完了すると、 実行の詳細ページ で 問題 の下に解決された値が表示されます。

サポートされている値参照

次の動的値参照がサポートされています。

参照

説明

{{job.id}}

ジョブに割り当てられた一意の識別子。

{{job.name}}

ジョブ実行時のジョブの名前。

{{job.run_id}}

ジョブ実行に割り当てられた一意の識別子。

{{job.repair_count}}

現在のジョブ実行における修復試行回数。

{{job.start_time.<argument>}}

ジョブ実行が開始された時刻 (UTC タイムゾーン) に基づく値。 戻り値は argument オプションに基づいています。 日付と時刻の値については、オプションを参照してください。

{{job.parameters.<name>}}

キー<name>を持つジョブレベルの値。

{{job.trigger.type}}

ジョブ実行のトリガー タイプ。 指定できる値は、 periodicone_timerun_job_taskfile_arrivalcontinuous、および tableです。

{{job.trigger.file_arrival.location}}

このジョブにファイル到着トリガーが設定されている場合は、保存場所の値。

{{job.trigger.time.<argument>}}

ジョブ実行がトリガーされた時刻 (UTC タイムゾーン) に基づく値。cron スケジュールを使用したジョブの最も近い分に切り捨てられます。 戻り値は argument オプションに基づいています。 日付と時刻の値については、オプションを参照してください。

{{task.name}}

現在のタスクの名前。

{{task.run_id}}

現在実行中のタスクの一意の識別子。

{{task.execution_count}}

現在のタスクが実行された回数 (再試行と修復を含む)。

{{task.notebook_path}}

現在のノートブック タスクのノートブック パス。

{{tasks.<task_name>.run_id}}

<task_name>に対して実行されるタスクに割り当てられた一意の識別子。

{{tasks.<task_name>.result_state}}

タスク<task_name>の結果の状態。 指定できる値は、 successfailedexcludedcanceledevictedtimedoutupstream_canceledupstream_evicted、および upstream_failedです。

{{tasks.<task_name>.error_code}}

タスクの実行中にエラーが発生した場合のタスク<task_name>のエラー コード。 可能な値の例としては、 RunExecutionErrorResourceNotFoundUnauthorizedErrorがあります。 タスクが成功した場合、これは空の文字列として評価されます。

{{tasks.<task_name>.execution_count}}

タスク<task_name>が実行された回数 (再試行と修復を含む)。

{{tasks.<task_name>.notebook_path}}

ノートブック タスク<task_name>のノートブックへのパス。

{{tasks.<task_name>.values.<value_name>}}

タスク<task_name>によって設定されたキー<value_name>を持つタスク値。

{{workspace.id}}

ワークスペースに割り当てられた一意の識別子。

{{workspace.url}}

ワークスペースの URL。

これらの参照は、ジョブを作成するとき、ジョブを編集するとき、または別の割り当てでジョブを実行するときに、任意のタスクで設定できます。

タスク値を使用してジョブ内のタスク間で問題を渡すこともできます。 「Databricks ジョブ内のタスク間で情報を共有する」を参照してください。

日付と時刻の値のオプション

時間ベースの引数変数からの戻り値を指定するには、次の引数を使用します。 すべての戻り値は、UTC タイムゾーンのタイムスタンプに基づいています。

引数

説明

iso_weekday

タイムスタンプの曜日を表す 1 から 7 までの数字を返します。

is_weekday

タイムスタンプが平日の場合は true を返します。

iso_date

日付を ISO 形式で返します。

iso_datetime

日付と時刻を ISO 形式で返します。

year

タイムスタンプの年部分を返します。

month

タイムスタンプの月部分を返します。

day

タイムスタンプの日部分を返します。

hour

タイムスタンプの時間部分を返します。

minute

タイムスタンプの分部分を返します。

second

タイムスタンプの 2 番目の部分を返します。

timestamp_ms

タイムスタンプをミリ秒単位で返します。

非推奨の変数

次のパラメーター変数は非推奨です。 これらは引き続きサポートされていますが、新しいジョブや既存のジョブの更新では、[supported value references>(#supported-references) を使用する必要があります。 推奨される置換参照は、各変数の説明に含まれています。

変数

説明

{{job_id}}

ジョブに割り当てられた一意の識別子。 代わりに job.id を使用してください。

{{run_id}}

タスク実行に割り当てられた一意の識別子。 代わりに task.run_id を使用してください。

{{start_date}}

タスクの実行が開始された日付。 形式は UTC タイムゾーンの yyyy-MM-dd です。 代わりに job.start_time.<argument> を使用してください。

{{start_time}}

クラスターが作成され準備完了後の実行開始のタイムスタンプ。 形式は、UTC タイムゾーンの UNIX エポックからのミリ秒で、 System.currentTimeMillis()で返されます。 代わりに job.start_time.<format> を使用してください。

{{task_retry_count}}

最初の試行が失敗した場合にタスクの実行を試行した再試行回数。 値は最初の試行で 0 で、再試行ごとに増加します。 代わりに task.execution_count を使用してください。

{{parent_run_id}}

複数のタスクを含むジョブの実行に割り当てられる一意の識別子。 代わりに job.run_id を使用してください。

{{task_key}}

複数のタスクを含むジョブの一部であるタスクに割り当てられる一意の名前。 代わりに task.name を使用してください。