Share via


Passar o contexto sobre o trabalho é executado em tarefas de trabalho

Você pode usar referências de valor dinâmico para passar contexto sobre um trabalho ou tarefa executado, como o nome do trabalho ou tarefa, o identificador de uma execução ou a hora de início de uma execução de trabalho. As referências de valor dinâmico são variáveis de modelo que são substituídas pelos valores apropriados quando a tarefa de trabalho é executada. Quando um trabalho é executado, a variável de parâmetro de tarefa cercada por chaves duplas é substituída e acrescentada a um valor de cadeia de caracteres opcional incluído como parte do valor. Por exemplo, para passar um parâmetro nomeado MyJobId com um valor de para qualquer execução de ID de trabalho 6, adicione o seguinte parâmetro de my-job-6 tarefa:

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

O conteúdo das chaves duplas não é avaliado como expressões, portanto, você não pode fazer operações ou funções em chaves duplas.

Identificadores fornecidos pelo usuário, por exemplo, nomes de tarefas, chaves de valor de tarefa ou nomes de parâmetros de trabalho contendo caracteres especiais devem ser escapados cercando os identificadores com backticks (` `). Apenas caracteres alfanuméricos e sublinhados podem ser usados sem escapar.

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

Erros de sintaxe em referências (por exemplo, uma chave ausente) são ignorados e o valor é tratado como uma cadeia de caracteres literal. Por exemplo, {{my.value} é passado como a cadeia de caracteres "{{my.value}". No entanto, inserir uma referência inválida que pertença a um namespace conhecido (por exemplo, {{job.naem}}) não é permitido. Uma mensagem de erro será exibida se uma referência inválida pertencente a um namespace conhecido for inserida na interface do usuário.

Após a conclusão de uma tarefa, você pode ver os valores resolvidos para parâmetros em Parâmetros na página de detalhes da execução.

Referências de valor suportadas

As seguintes referências de valor dinâmico são suportadas:

Referência Description
{{job.id}} O identificador exclusivo atribuído ao trabalho.
{{job.name}} O nome do trabalho no momento da execução do trabalho.
{{job.run_id}} O identificador exclusivo atribuído à execução do trabalho.
{{job.repair_count}} O número de tentativas de reparo na execução do trabalho atual.
{{job.start_time.[argument]}} Um valor baseado na hora (no fuso horário UTC) iniciada pela execução do trabalho. O valor de retorno é baseado na argument opção. Consulte Opções para valores de data e hora.
{{job.parameters.[name]}} O valor do parâmetro de nível de trabalho com a chave [name].
{{job.trigger.type}} O tipo de gatilho da execução do trabalho. Os valores possíveis são periodic, onetime, run_job_task, file_arrival, continuous, e table.
{{job.trigger.file_arrival.location}} Se um gatilho de chegada de arquivo estiver configurado para esse trabalho, o valor do local de armazenamento.
{{job.trigger.time.[argument]}} Um valor baseado na hora (no fuso horário UTC) em que a execução do trabalho foi acionada, arredondado para baixo para o minuto mais próximo para trabalhos com uma agenda cron. O valor de retorno é baseado na argument opção. Consulte Opções para valores de data e hora.
{{task.name}} O nome da tarefa atual.
{{task.run_id}} O identificador exclusivo da tarefa atual executada.
{{task.execution_count}} O número de vezes que a tarefa atual foi executada (incluindo novas tentativas e reparos).
{{task.notebook_path}} O caminho do bloco de anotações da tarefa atual do bloco de anotações.
{{tasks.[task_name].run_id}} O identificador exclusivo atribuído à tarefa é executado para [task_name].
{{tasks.[task_name].result_state}} O estado resultante da tarefa [task_name]. Os valores possíveis são success, failed, , canceledexcluded, evicted, timedout, upstream_canceled, upstream_evictede upstream_failed.
{{tasks.[task_name].error_code}} O código de erro para a tarefa [task_name] se ocorreu um erro ao executar a tarefa. Exemplos de valores possíveis são RunExecutionError, ResourceNotFounde UnauthorizedError. Para tarefas bem-sucedidas, isso é avaliado como uma cadeia de caracteres vazia.
{{tasks.[task_name].execution_count}} O número de vezes que a tarefa [task_name] foi executada (incluindo novas tentativas e reparos).
{{tasks.[task_name].notebook_path}} O caminho para o bloco de notas para a tarefa [task_name]do bloco de notas .
{{tasks.[task_name].values.[value_name]}} O valor da tarefa com a chave [value_name] que foi definida pela tarefa [task_name].
{{workspace.id}} O identificador exclusivo atribuído ao espaço de trabalho.
{{workspace.url}} A URL do espaço de trabalho.

Você pode definir essas referências com qualquer tarefa ao Criar um trabalho, Editar um trabalho ou Executar um trabalho com parâmetros diferentes.

Você também pode passar parâmetros entre tarefas em um trabalho com valores de tarefa. Consulte Compartilhar informações entre tarefas em um trabalho do Azure Databricks.

Opções para valores de data e hora

Use os argumentos a seguir para especificar o valor de retorno de variáveis de parâmetro baseadas em tempo. Todos os valores de retorno são baseados em um carimbo de data/hora no fuso horário UTC.

Argumento Description
iso_weekday Devolve um dígito de 1 a 7, representando o dia da semana do carimbo de data/hora.
is_weekday Retorna true se o carimbo de data/hora estiver em um dia da semana.
iso_date Devolve a data em formato ISO.
iso_datetime Devolve a data e hora em formato ISO.
year Devolve a parte do ano do carimbo de data/hora.
month Devolve a parte do mês do carimbo de data/hora.
day Devolve a parte do dia do carimbo de data/hora.
hour Retorna a parte da hora do carimbo de data/hora.
minute Retorna a parte do minuto do carimbo de data/hora.
second Devolve a segunda parte do carimbo de data/hora.
timestamp_ms Retorna o carimbo de data/hora em milissegundos.

Variáveis de parâmetro preteridas

As variáveis de parâmetro a seguir foram preteridas. Embora ainda sejam suportados, quaisquer novos trabalhos ou atualizações para trabalhos existentes devem usar as referências de valor suportadas. A referência de substituição recomendada está incluída na descrição de cada variável.

Variável Description
{{job_id}} O identificador exclusivo atribuído a um trabalho. Utilize job.id em substituição.
{{run_id}} O identificador exclusivo atribuído a uma tarefa executada. Utilize task.run_id em substituição.
{{start_date}} A data de início da execução de uma tarefa. O formato é aaaa-MM-dd no fuso horário UTC. Utilize job.start_time.[argument] em substituição.
{{start_time}} O carimbo de data/hora do início da execução da execução depois que o cluster é criado e pronto. O formato é milissegundos desde a época do UNIX no fuso horário UTC, conforme retornado pelo System.currentTimeMillis(). Utilize job.start_time.[format] em substituição.
{{task_retry_count}} O número de novas tentativas que foram tentadas para executar uma tarefa se a primeira tentativa falhar. O valor é 0 para a primeira tentativa e aumenta a cada nova tentativa. Utilize task.execution_count em substituição.
{{parent_run_id}} O identificador exclusivo atribuído à execução de um trabalho com várias tarefas. Utilize job.run_id em substituição.
{{task_key}} O nome exclusivo atribuído a uma tarefa que faz parte de um trabalho com várias tarefas. Utilize task.name em substituição.