An operational policy enables you to define a common approach to controlling particular node properties, such as connection credentials, as well as certain aspects of message flow behavior, including flow rate. Operational policies provide a shared and managed definition that you can reuse, and they enable the following user capabilities:
- Developers - the ability to reuse configuration information in multiple places.
- Administrators - the ability to define key configuration data for each environment.
- Operators - the ability to monitor and dynamically modify configuration data.
Policies can be created and updated at any time in the solution lifecycle. A policy instance is made up of a set of defined operational properties that are stored in a policy document, and a policy instance can be applied at the message flow, or node level. You can set operational property values on the node at development time, override them in the BAR file, and set them in an operational policy. When your resources are deployed, the following precedence rules apply to the operational property values:
- An operational property value set in a policy takes precedence over a value that is overridden in a BAR file or set on the node.
- When there is no policy for an operational property value, the value that is overridden in a BAR file takes precedence over the value that is set on the node.
- When there is no policy or BAR file override for an operational property value, the value that is set on the node takes precedence.
Tip: If you have designed your message flow to include a local environment override, any property value set by the local environment override will take precedence over a value set in an operational policy, a BAR file override, or on the node.
When a policy instance is attached to a message flow, or to a message flow node, and updates are made to that policy instance, a dynamic refresh of the affected message flow, or message flow node, takes place. You do not need to redeploy your resources for the updates to take effect. Update requests can be viewed in the web user interface by clicking in the navigation tree.
The following operational policy types are available:
- MQEndpoint policy
- An MQEndpoint policy can be attached to one or more MQ nodes in a message flow to control connection details at run time. For more information, see MQEndpoint policy.
- MQTTPublish policy
- An MQTTPublish policy can be attached to one or more MQTTPublish nodes in a message flow to control the value of specific MQ
Telemetry Transport (MQTT) publishing properties at run time. For more information, see MQTTPublish policy.
- MQTTSubscribe policy
- An MQTTSubscribe policy can be attached to one or more MQTTSubscribe nodes in a message flow to control the value of specific MQ
Telemetry Transport (MQTT) subscription properties at run time. For more information, see MQTTSubscribe policy.
- Workload management policy
- A workload management policy can be attached to a message flow to tune the performance of the message flow. For more information, see Workload management policy.