Intelligent Management: health controller commands with the AdminConfig object
Use the AdminConfig object to modify the health controller settings. We can change the controller cycle, prohibit server restarts at certain times of the day, and so on.
Health management comes equipped with smart defaults that accommodate most environments. However, if you discover that our health controller is not working the way we want, then tune the default parameters. We can change these settings in the administrative console or with the wsadmin tool.
To change configuration settings for the health controller, we must have configurator or administrator privileges. If we have operator privileges, we can only change the runtime configuration.
To edit the health controller properties:
.\wsadmin.sh -lang jython
hcid = AdminConfig.getid("/HealthController:/")
AdminConfig.modify(hcid, [["attribute_name", value]])
AdminConfig.save()
Attributes
We can edit the following attributes:
- controlCycleLength
- Time between consecutive health checks to determine if a health policy condition is breached.
Default: 5
- enable
- Specifies if health monitoring is enabled.
Default: true
- maxConsecutiveRestarts
- Number of attempts to revive a server after a restart decision is made. If this number is exceeded, a failed operation is assumed and restarts are disabled for the server.
Valid values: whole numbers between 1 and 5
Default: 3
- minRestartInterval
- Controls the minimum amount of time that must pass between consecutive restarts of an server instance.
Valid values: The value can range from 15 minutes to 365 days, inclusive. Indicate the units with the minRestartIntervalUnits attribute. A value of 0 disables the minimum restart value.
Default: 0 (disabled)
- minRestartIntervalUnits
- Indicates the units to use with the minRestartInterval attribute
Valid values: 2 (minutes), 3 (hours), or 4 (days)
Default: 2
- prohibitedRestartTimes
- Times and days of the week during which a restart of an application server instance is prohibited. We cannot change this attribute with the AdminConfig object. To update the prohibited restart times in the administrative console, click...
Operational policies | Autonomic managers | Health controller
Edit the Prohibited restart times field.
- properties
- Custom property on the health controller.
- restartTimeout
- Number of minutes to wait for a server to stop before explicitly checking its state and attempting another start.
Valid values 1 to 60 minutes, specified as a whole number
Default: 5
Example
The following command example changes the restart timeout setting:hcid = AdminConfig.getid("/HealthController:/")
AdminConfig.modify(hcid, [["restartTimeout", 6]])
AdminConfig.save()The following command sets the number of minutes for the approval timeout of runtime tasks for the health controller by specifying the com.ibm.ws.xd.hmm.controller.ControlConfig.approvalTimeOutMinutes JVM custom property. In this example specifically, the value of the approval timeout is set to 40 minutes:
.\wsadmin.sh -lang jython
hcid = AdminConfig.getid("/HealthController:/")
AdminConfig.create('Property', hcid, [['name', 'com.ibm.ws.xd.hmm.controller.ControlConfig.approvalTimeOutMinutes'], ]['value', '40']])
AdminConfig.save()
Related:
Health management Monitor and tuning health management Configure health management HmmControllerProcs.jacl script Intelligent Management: health controller custom properties