It is possible to configure a timeout to all tasks being scheduled by JetPatch manager using the manager watchdog. Hence, a timeout can be configured for internal (built-in) and external (uploaded by user) tasks. That timeout is a specified period of time until JetPatch terminates the task (5-hour maximum). The JetPatch connector gets the timeout from the manager (per every running task) and fails the task accordingly, if it is not finished within the given time.
Important Notes:
- Requires JetPatch connector version 3.9.4.226 and later
- Maximum timeout value for 'vm-max-in-process interval' is 21600
- Maximum timeout value for timeout_sec parameter is 17880
- The configured value in intigua.config.xml should be higher than the 'timeout_sec' parameter value for the built-in script, then restart tomcat
Manager properties with defined timeout
Configurable properties under intigua.conf.xml file:
Connect to JetPatch Manager (application server) and configure intigua.config.xml file:
vi /usr/share/tomcat/default/conf/intigua.config.xml
Insert the timeout property 'vm-max-in-process interval' inside the 'system' parameter.
The property makes sure that after the time you configure , a command (and not only for scripts) will fail, if it is not yet completed.
# For each command at all, not only for scripts, fail after this time, if not finished.
# The property is in seconds and does not exist by default, neither in the file installed by RPM, nor in OVA
# Default value: 21600 sec
<vm-max-in-process-interval>21600</vm-max-in-process-interval>
E.g.:
<system>
..............
<vm-max-in-process-interval>21600</vm-max-in-process-interval>
</system>
Configurable properties under intigua.properties file:
Connect to JetPatch Manager (application server) and configure intigua.properties file:
vi /usr/share/tomcat/default/conf/intigua.properties
You can add the following properties and configure timeouts:
pg.wsus.fail-unfinished-
# 3 hours by default for each of the WSUS tasks :
# 'WSUS get groups and computers in group','WSUS get update summaries per computer','WSUS get update summaries per group','WSUS get updates'
# If the property is changed between restarts, the WSUS scripts will use the new value
pg.wsus.fail-unfinished-tasks-timeout.min=180
# 5 minutes by default to get response for the finished task from the connector
# If the property is changed between restarts, the manager will wait for the response for this much seconds
automation.task.completion.timeout.sec=300
Configure Script timeout for built-in scripts
For Built-In task, Setting timeout for built-in tasks has to be done by executing a DB instruction.
The task 'Execute Patch installation' is a built in task which installs patches for every activated remediation plan. The default timeout value is 3h. As mentioned, to change the timeout value, a DB update needs to be done. 'timeout_sec' is column in the DB which stores the timeout values for built-in and non-built in tasks. As mentioned above, timeout for external scripts (non built-in) can be set through our GUI hence this section is only intended for built-in scripts configurations.
Example: Configure timeout for 'Execute Patch Installation for Single Computer'
1. Perform the following SQL setting :
# 17880 seconds is approx. 5h
update automation_task set timeout_sec = '17880' where name = 'execute patch installation for single computer'
2. Restart the Manager (connect to JetPatch manager via SSH and run service tomcat restart)
Note: for the other built-in scripts, change the SQL setting name condition from 'execute patch installation for single computer' to 'other built in script'
More on built-in Tasks:
- Collect Endpoints updates task has a default non-configurable timeout of 1 hour. DB update is needed to change this value
- Every other built-in task has a default non-configurable timeout of 3 hours. DB update is needed to change this value.
Configure Script timeout for external scripts
The timeout is an external parameter that can be set to a different value every time you run a task on an endpoint / set of endpoints. For Non-Built-In Task, it is possible to set the timeout parameter via the JetPatch GUI. The value set in the GUI must be lower than 5.5 hours (if not it will not work..). If you pass a zero value, then this will instruct the connector to use its default timeout value (as mentioned set to 5.5 hours in our case). Our experts recommendation is to put 16200 sec which are 4.5 hours.
To set timeout for external scripts:
- Create a script
- Go to System > Tasks
- Click the 'Add Task' Button
- Fill in all task details and insert a value to the timeout parameter (default is 300 sec)
- Save
- Run task (either as part of a remediation plan or run tasks manually on a set of server
Comments
0 comments
Please sign in to leave a comment.