Date: Fri, 29 Mar 2024 05:49:28 +0000 (UTC) Message-ID: <857635070.12435.1711691368334@change.sos-berlin.com> Subject: Exported From Confluence MIME-Version: 1.0 Content-Type: multipart/related; boundary="----=_Part_12434_92292975.1711691368334" ------=_Part_12434_92292975.1711691368334 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Content-Location: file:///C:/exported.html
If you want to set different setback intervals depending on the exit cod= e then you can use the internal API by defining a post-processing routine a= fter the task.
In this example, we define a job in a job chain.
Perform the following tasks with JOE:
<?xml= version=3D"1.0" encoding=3D"ISO-8859-1"?> <job order=3D"yes" stop_on_error=3D"no"> <script language=3D"shell"> <![CDATA[ exit 1 ]]> </script> <monitor name=3D"handleSetback" ordering=3D"0"> <script language=3D"java:javascript"> <![CDATA[ function spooler_task_after() { var exit =3D spooler_task.exit_code; var job =3D spooler_task.job; // After one setback, handle this as an error. job.max_order_setbacks =3D 1; switch (exit ) { case 0: // proceed return true; case 1: // restart after 60 seconds job.set_delay_order_after_setback( 1, "60" ); break; case 4444: // restart after 2 hours job.set_delay_order_after_setback( 1, "02:00:00" ); break; default: // restart after 300 seconds job.set_delay_order_after_setback( 1, "300" ); break; }=20 } ]]> </script> </monitor> <run_time/> </job>
<job= _chain> <job_chain_node state=3D"100" job=3D"job1" next_state=3D"success" error_state=3D"error" on_error=3D"setback"/> <job_chain_node state=3D"success"/> <job_chain_node state=3D"error"/> </job_chain>