SchedulerX proporciona variables de sistema integradas que puede referenciar en tiempo de ejecución dentro de tareas de script. Estas variables le permiten acceder a parámetros de trabajo, contexto de fragmentación y metadatos de ejecución sin necesidad de codificar valores fijos.
Todas las variables utilizan la sintaxis #{schedulerx.<variable>}.
La versión de agent version debe ser 1.12.5 o posterior.
Contexto de programación
|
Variable |
Descripción |
Ejemplo |
|
|
Parámetro del trabajo. |
|
|
|
Forma en que se activó el trabajo. Consulte Tipos de activación. |
|
|
|
Marca de tiempo de programación, con precisión de milisegundos. |
|
|
|
Marca de tiempo de los datos, con precisión de milisegundos. |
|
|
|
Número de versión del agente; los scripts lo utilizan para identificar el entorno de ejecución. |
|
Variables de fragmentación
Estas variables proporcionan contexto a nivel de fragmento para trabajos de difusión y trabajos de fragmentación.
|
Variable |
Descripción |
Ejemplo |
|
|
ID del fragmento. Compatible con trabajos de difusión y de fragmentación. |
|
|
|
Parámetro del fragmento. Compatible únicamente con trabajos de fragmentación. |
|
|
|
Número total de fragmentos. Compatible con trabajos de difusión y de fragmentación. |
|
Estado de ejecución
|
Variable |
Descripción |
Ejemplo |
|
|
Cantidad de reintentos del trabajo. Su valor es |
|
Tipos de activación
La variable #{schedulerx.triggerType} devuelve uno de los siguientes valores enteros:
|
Valor |
Significado |
|
1 |
Programación periódica |
|
2 |
Actualización de datos |
|
3 |
Programación mediante API |
|
4 |
Nueva ejecución manual |
|
5 |
Reintento del sistema |
|
6 |
Ejecución manual |
Ejemplo de uso
A continuación se muestra un script de shell que ejemplifica cómo referenciar las variables de sistema:
#!/bin/bash
# Access scheduling context
echo "Job parameter: #{schedulerx.jobParameters}"
echo "Trigger type: #{schedulerx.triggerType}"
echo "Schedule time: #{schedulerx.scheduleTime}"
echo "Data time: #{schedulerx.dataTime}"
# Sharding context (broadcast and sharding jobs only)
echo "Shard ID: #{schedulerx.shardingId}"
echo "Shard parameter: #{schedulerx.shardingParameters}"
echo "Total shards: #{schedulerx.shardingNum}"
# Execution state
echo "Attempt: #{schedulerx.attempt}"
Tras la sustitución de variables, la salida tiene un formato similar al siguiente:
Job parameter: test
Trigger type: 1
Schedule time: 1743150114875
Data time: 1743150114875
Shard ID: 0
Shard parameter: hangzhou
Total shards: 2
Attempt: 0