Operations execute functions on resources in your inventory. Some of these operations could change the "state" of a resource (such as start, stop, or restart commands), while others can be purely informational (obtain some report data, or get a list of deployments). Some resources do not support operations but those that do will have an Operations tab in the RHQ UI that provides you the ability to invoke those operations either immediately or later in the future and either one-time-only or on a recurring basis.
RHQ provides a robust set of features for remotely executing operations on resources in your inventory.
Every operation exposed through RHQ has a wide array of options for execution:
As you can see the options above, any operation can be executed immediately ("now") or deferred until later. Operations can be scheduled to execute periodically. If an operation is set to execute periodically, you can also choose when (if at all) to terminate the recurrence.
If you would prefer to specify the schedule as a cron string, you have that option. There is context help text available in the UI that describes the valid cron syntax that is supported.
RHQ has no limit to the number of arguments that an operation may take (though each parameter value is limited to a 4 KB size limit). Depending on the operation, it may not take any arguments, or it may take several.
The same is true for results. RHQ has no limit on how complex the results for an operation may be (though, again, each individual string field in the result set is limited to a 4 KB size limit). Some operations return no results (other than a "success" or "failure" status) while others could return complex results.
Under the covers, the arguments and results use the configuration subsystem, and so have the ability to easily render arbitrarily complex structures.
Operations can be executed against a single resource at a time, or against an entire resource group. When executing against a resource group, the user has a few additional options:
- execute all of the operations at the same time ("in parallel") or order them in a particular fashion
- if the operations are ordered, should operations that fail cause the entire group operation to fail
Regardless of whether an operation is scheduled or executed on a resource or group, all results are recorded in an operation audit trail or history.
Each resource's operation history item records the name of the user who requested the operation to be executed, when the request to execute the operation was submitted, what the current status is (success, failure, in progress, canceled) and, if completed, what the results of the operation were.
Note that if an operation is currently in progress, you can ask that it be canceled. Note that not all operations can be canceled. To attempt to cancel an operation, select its operation history item (whose status is currently "In Progress") and press the Cancel button.
If an operation failed, you can click the "Failed" icon and popup details of the failure which usually consists of a technical error message.
Group history is more detailed because for every group operation, there is one or more associated resource operations (each group operation can be thought of as nothing more than executing multple resource operations together). If you navigate to a compatible group's Operations>History tab, it will look identical to an individual resource's Operations>History tab. It lists all the history items for all operations executed on that group. But if you double click a group operation history item, you will drill down into details about the individual resource operations that were invoked as part of that group operation.
You can see the results of each individual resource operation that was executed as part of the group operation. If one of the resource's failed to execute the operation, you can click the "Failed" icon to see what error details are available. Double clicking a resource operation history item here will directly navigate you to that resource's Operations>History tab and will show you the details of that history item.