Transferencia de contexto sobre las ejecuciones de trabajos en tareas de trabajo

Puede usar referencias de valor dinámico para pasar contexto sobre un trabajo o una ejecución de tareas, como el nombre del trabajo o la tarea, el identificador de una ejecución o la hora de inicio de una ejecución de trabajo. Las referencias de valor dinámico son variables de plantilla que se reemplazan por los valores adecuados cuando se ejecuta la tarea del trabajo. Cuando se ejecuta un trabajo, la variable de parámetro de tarea entre llaves dobles se reemplaza y se anexa a un valor de cadena opcional incluido como parte del valor. Por ejemplo, para pasar un parámetro denominado MyJobId con un valor de my-job-6para cualquier ejecución del identificador de trabajo 6, agregue el siguiente parámetro de tarea:

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

El contenido de las llaves dobles no se evalúa como expresiones, por lo que no puede realizar operaciones o funciones entre llaves dobles.

A los identificadores proporcionados por el usuario, por ejemplo, los nombres de tarea, las claves de valor de tarea o los nombres de parámetros de trabajo que contienen caracteres especiales se les debe aplicar escape y rodear con caracteres de acento grave (` `). Solo se pueden usar caracteres alfanuméricos y de subrayado sin escape.

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

Los errores de sintaxis en las referencias (por ejemplo, una llave que falta) se omiten y el valor se trata como una cadena literal. Por ejemplo, {{my.value} se pasa como la cadena "{{my.value}". Pero no se permite escribir una referencia no válida que pertenezca a un espacio de nombres conocido (por ejemplo, {{job.naem}}). Si se escribe una referencia no válida que pertenece a un espacio de nombres conocido en la interfaz de usuario, se muestra un mensaje de error.

Una vez que se completa una tarea, puede ver los valores resueltos de los parámetros en Parámetros en la página de detalles de la ejecución.

Referencias de valor admitidas

Se admiten las siguientes referencias de valor dinámico:

Referencia Descripción
{{job.id}} Identificador único asignado al trabajo.
{{job.name}} Nombre del trabajo en el momento de la ejecución del trabajo.
{{job.run_id}} Identificador único asignado a la ejecución del trabajo.
{{job.repair_count}} Número de intentos de reparación en la ejecución del trabajo actual.
{{job.start_time.[argument]}} Valor basado en la hora (en la zona horaria UTC) a la que se ha iniciado la ejecución del trabajo. El valor devuelto se basa en la opción argument. Vea Opciones para los valores de fecha y hora.
{{job.parameters.[name]}} Valor del parámetro de nivel de trabajo con la clave [name].
{{job.trigger.type}} Tipo de desencadenador de la ejecución del trabajo. Los valores posibles son: periodic, onetime, run_job_task, file_arrival, continuous y table.
{{job.trigger.file_arrival.location}} Si se configura un desencadenador de llegada de archivos para este trabajo, el valor de la ubicación de almacenamiento.
{{job.trigger.time.[argument]}} Valor basado en la hora (en la zona horaria UTC) a la que se ha desencadenado la ejecución del trabajo, redondeado al minuto más cercano para los trabajos con una programación cron. El valor devuelto se basa en la opción argument. Vea Opciones para los valores de fecha y hora.
{{task.name}} Nombre de la tarea actual.
{{task.run_id}} Identificador único de la ejecución de la tarea actual.
{{task.execution_count}} Número de veces que se ha ejecutado la tarea actual (incluidos reintentos y reparaciones).
{{task.notebook_path}} Ruta de acceso de la tarea del cuaderno actual.
{{tasks.[task_name].run_id}} Identificador único asignado a la ejecución de tarea para [task_name].
{{tasks.[task_name].result_state}} El estado de resultado de la tarea [task_name]. Los valores posibles son success, failed, excluded, canceled, evicted, timedout, upstream_canceled, upstream_evicted y upstream_failed.
{{tasks.[task_name].execution_count}} Número de veces que se ha ejecutado la tarea [task_name] (incluidos reintentos y reparaciones).
{{tasks.[task_name].notebook_path}} Ruta de acceso al cuaderno de la tarea de cuaderno [task_name].
{{tasks.[task_name].values.[value_name]}} Valor de tarea con la clave [value_name] que ha establecido la tarea [task_name].
{{workspace.id}} Identificador único asignado al área de trabajo.
{{workspace.url}} URL del área de trabajo.

Puede establecer estas referencias con cualquier tarea al Crear un trabajo, Editar un trabajo o Ejecutar un trabajo con otros parámetros.

También puede pasar parámetros entre tareas de un trabajo con valores de tarea. Consulte Uso compartido de información entre tareas en un trabajo de Azure Databricks.

Opciones para los valores de fecha y hora

Use los argumentos siguientes para especificar el valor devuelto de las variables de parámetro basadas en el tiempo. Todos los valores devueltos se basan en una marca de tiempo en la zona horaria UTC.

Argumento Descripción
iso_weekday Devuelve un dígito de 1 a 7, que representa el día de la semana de la marca de tiempo.
is_weekday Devuelve true si la marca de tiempo es un día de la semana.
iso_date Devuelve la fecha en formato ISO.
iso_datetime Devuelve la fecha y hora en formato ISO.
year Devuelve la parte del año de la marca de tiempo.
month Devuelve la parte del mes de la marca de tiempo.
day Devuelve la parte del día de la marca de tiempo.
hour Devuelve la parte de la hora de la marca de tiempo.
minute Devuelve la parte del minuto de la marca de tiempo.
second Devuelve la parte del segundo de la marca de tiempo.
timestamp_ms Devuelve la marca de tiempo en milisegundos.

Variables de parámetro en desuso

Las siguientes variables de parámetro están en desuso. Aunque todavía se admiten, los nuevos trabajos o actualizaciones de los trabajos existentes deben usar las referencias de valor admitidas. La referencia de reemplazo recomendada se incluye en la descripción de cada variable.

Variable Descripción
{{job_id}} Identificador único asignado a un trabajo. Use job.id en su lugar.
{{run_id}} Identificador único asignado a una ejecución de tarea. Use task.run_id en su lugar.
{{start_date}} Fecha en que se inició la ejecución de una tarea. El formato es aaaa-mm-dd en la zona horaria UTC. Use job.start_time.[argument] en su lugar.
{{start_time}} Marca de tiempo del inicio de la ejecución después de crear y preparar el clúster. El formato es de milisegundos desde la época de UNIX en la zona horaria UTC, tal y como devuelve System.currentTimeMillis(). Use job.start_time.[format] en su lugar.
{{task_retry_count}} Número de reintentos que se ha intentado ejecutar una tarea si se produce un error en el primer intento. El valor es 0 para el primer intento y se incrementa con cada reintento. Use task.execution_count en su lugar.
{{parent_run_id}} Identificador único asignado a la ejecución de un trabajo con varias tareas. Use job.run_id en su lugar.
{{task_key}} Nombre único asignado a una tarea que forma parte de un trabajo con varias tareas. Use task.name en su lugar.