Page History
...
- Name: A job name is required. No spaces are allowed and a number of characters are not allowed.
- Label: A label assigns a name to the workflow node that is assigned the job.
- A job can be re-used in a workflow, however, the job label must be unique.
- Agent: Assignment to an Agent is required.
- Return Code: The meaning Title: An explanation of the job's purpose. Users who want to reference web sites, can use links in markdown syntax, for example:
[web site](https://www.sos-berlin.com)
. When the job is displayed in the Workflows view, the link is clickable from the job's title. - Agent: Assignment to an Agent is required.
- Return Code: The meaning of the job's return code has to be specified.
- Return Codes
- For shell jobs the OS exit code determines the return code. By default an exit code 0 signals success, any other exit codes signal failure.
- For JVM jobs the return code is specified by the job implementation.
- If a number of return codes are used to indicate success or failure then
- they can be specified from a list of comma separated values
- Return Codes
- For shell jobs the OS exit code determines the return code. By default an exit code 0 signals success, any other exit codes signal failure.
- For JVM jobs the return code is specified by the job implementation.
- If a number of return codes are used to indicate success or failure then
- they can be specified from a list of comma separated values, for example
1,2,4,8
. - they can be specified from a range of return codes using two dots between return codes, for example,
1,2..4,8
.
- they can be specified from a list of comma separated values, for example
- Negative return codes can be indicated
- by specifying negative numbers, for example
1,2,4,
-1,-2,-48
. - they can be specified from a range of return codes using two dots between return codes.by specifying a range of negative numbers, for example1, -
1,
-2..
-4
.,8
.
- by specifying negative numbers, for example
- Negative return codes can be indicated
- by specifying negative numbers, for example
1,2,4,-1,-2,-4
. - by specifying a range of negative numbers, for example
1,-1,-2..-4
.
- by specifying negative numbers, for example
- Some Some operating systems use 32-bit unsigned integers as exit codes. Therefore positive numbers in the range between 0x80000000 to 0xffffffff are considered negative return codes, for example the values
-1
and4294967295
are considered the same. Jira server SOS JIRA columnIds issuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution columns key,summary,type,created,updated,due,assignee,reporter,priority,status,resolution serverId 6dc67751-9d67-34cd-985b-194a8cdc9602 key JS-2035 Jira server SOS JIRA columnIds issuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution columns key,summary,type,created,updated,due,assignee,reporter,priority,status,resolution serverId 6dc67751-9d67-34cd-985b-194a8cdc9602 key JOC-1463
- On Success / On Error
- Either successful return codes can be specified or return codes signaling failure.
- If a job terminates with a return code that is not indicated with the successful return codes or that is stated with return codes signaling failure then the job is considered to have failed. For further details see the section below on Error Handling.
- A JS7 - Notifications is created for failed jobs.
- On Warning
- For return codes that signal warnings the job execution is considered successful and no error handling applies.
- A JS7 - Notifications is created for jobs raising warnings.
- Return Codes
- Executable Type: Allows the job implementation to be selected as a shell job or a JVM job.
- For Shell jobs the Job Property Editor displays the Script subtab and Environment Variables sub-tab.
- For JavaScript jobs the Job Property Editor displays the Script sub-tab.
- For Java jobs and JITL jobs the Job Property Editor displays the Java sub-tab.
- Script Sub-tab
- This tab holds the input field for the job script.
- The right upper corner of this tab offers a pencil icon to invoke the script editor. Any number of commands can be added to a job script:
- The script editor offers resizing, syntax highlighting, capabilities for search & replace, undo & redo etc. Closing the script editor with the Submit button will add the script content to the script sub-tab.
- This tab holds the input field for the job script.
...
- Job options include the following configuration items:
- Parallelism: Should more than one order pass the workflow at any given time or should parallel child orders execute the same job, then this setting determines the maximum number of tasks that are available for the job. This limits parallelism of tasks to the specified number. If more than the specified number of tasks is requested then orders have to wait until a task becomes free.
- Timeout / Grace Timeout: Specifies the maximum duration that a job should run.
- If the timeout is exceeded then the Agent will send a SIGTERM signal to a shell job. This corresponds to executing the
kill -15
command in Unix environments. The purpose of the SIGTERM signal is to let the job know that it should terminate and to leave it up to the job implementation to perform some cleanup tasks such as disconnecting from a database or removing temporary files. - After sending the SIGTERM signal the Agent will wait for the duration of the Grace Timeout to allow the task to complete. If the Grace Timeout is exceeded then the Agent will send a SIGKILL signal that will forcibly terminate the task. This corresponds to executing the
kill -9
command in Unix environments.wait for the duration of the Grace Timeout to allow the task to complete. If the Grace Timeout is exceeded then the Agent will send a SIGKILL signal that will forcibly terminate the task. This corresponds to executing thekill -9
command in Unix environments. - For details see JS7 - FAQ - How does JobScheduler terminate Jobs.
- The
timedOut
function can be used in an JS7 - If Instruction to check if a job terminated due to timeout constraints. The function returns a Boolean valuetrue
that indicates if the previous job was terminated due to a timeout constraint. If the job did terminate for other reasons then the function returns thefalse
value.Jira server SOS JIRA columnIds issuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution columns key,summary,type,created,updated,due,assignee,reporter,priority,status,resolution serverId 6dc67751-9d67-34cd-985b-194a8cdc9602 key JS-2164 - Use of the
timedout
function for a failed job requires use of the If Instruction inside the catch block of a Try/Catch Instruction.
- If the timeout is exceeded then the Agent will send a SIGTERM signal to a shell job. This corresponds to executing the
- Warn on shorter execution: Specifies that a warning is created if job execution time falls below this limit. Jobs with warnings are considered successful and are not subject to error handling.
- The setting can specify an absolute value in seconds, for example 3s.
- Alternatively to specifying seconds the duration can be specified using the format
hh:mm:ss
, for example 01:30:00 for one and a half hours. - Alternatively to specifying absolute values a percentage can be specified that is calculated from successful past job executions. A value 30% indicates that a warning is raised if the execution time falls below the average by this ratio.
- Alternatively to specifying seconds the duration can be specified using the format
- The job will raise a notification when falling below this limit.
- The setting can specify an absolute value in seconds, for example 3s.
- Warn on longer execution: Specifies that a warning is created if job execution exceeds this limit. Jobs with warnings are considered successful and are not subject to error handling.
- The setting can specify an absolute value in seconds, for example 3s.
- Alternatively to specifying seconds the duration can be specified using the format
hh:mm:ss
, for example 01:30:00 for one and a half hours. - Alternatively to specifying absolute values a percentage can be specified that is calculated from successful past job executions. A value 30% indicates that a warning is raised if the execution time exceeds the average by this ratio.
- Alternatively to specifying seconds the duration can be specified using the format
- The job will raise a notification when exceeding this limit.
- The setting can specify an absolute value in seconds, for example 3s.
- Compatibility: For users of JobScheduler branch 1.x a compatibility mode is available.
- For use of environment variables compatibility enables:
- the automatic creation of environment variables for shell jobs from any available order variables and job arguments.
- the use of the
SCHEDULER_PARAM_
prefix for any environment variable created.
- For use of job arguments the compatibility mode offers a corresponding tab.
- For use of environment variables compatibility enables:
- Criticality: This option allows a level to be selected that can be used for monitoring purposes to prioritize alerts depending on a job's criticality.
- Credential Key / Load User Profile: Specifies for jobs executed with Agents for Windows that the job should switch user context, see JS7 - Running Jobs as a different User.
- Fail on output to stderr / Warn on output to stderr: Checks for output in the stderr channel and raises an error or a warning.
- Fail: If output in the stderr channel is identified then an error is raised and the job is subject to error handling.
- Warn: If output in the stderr channel is identified then the job run is considered successful and a warning is created.
- In both situations a JS7 - Notifications is created.
- Skip job if no admission time / Show periods: Specifies that the job should be skipped if the order's daily plan date does not match the days specified with the JS7 - Admission Times for Jobs.
- If the checkbox is no checked then the job will wait for the next admission time.
- The Show Periods link allows to manage the job's admission times.
- Job options for JVM jobs do not offer all above options:
...
For example, a workflow contains a job with the name job1. Then use the name of the job as job1 for any occurrence of the job and assign different labels to a number of nodes. As in the example, the labels used are job1 and job1-copy. Now any changes applied to job job1 will be applied to both nodes in the workflow as both labels point to the same job.
...
Resources
...
Overview
Content Tools