IBM Support

Policy Chaining usage

Technote (FAQ)


When and how to use it and general concepts


There appear to be several misconceptions regarding the use of Policy Chaining that this document will attempt to address.
Policy Chaining is a feature of the EventReader whereby one can chain multiple Policies to run together sequentially. The Policies of the matching Filters are run in series, rather than simultaneously, and each Policy in the chain inherits the Policy Context from the previously run Policy. This means that variables whose values were assigned in a previous Policy in the chain maintain their values in subsequent Policies, unless directly altered within those Policies.

Policy Chaining requires that the Filters of Policies, which are intended to work together, must not be mutually exclusive.

Policy Chaining is intended for where an event does match more than one Filter that the acquired EventContainer will then be processed by all matching Policies in Filter list order one after the other with all the additional variables, values and updates, acquired to the EventContainer Context in its progress through each Policy, being passed to the next Policy in the matching list. 

The use of Policy Chaining is intended to be combined with the EventReader selection:

    Event Matching: Test events with all filters

If the Policies are expected to work upon independent sets of events with no overlap, then Policy Chaining is not pertinent in the configuration and you would need to ensure that the Filters being used are mutually exclusive.

If the Policies do have the potential to work upon the same events, and there is no dependency upon the actions of one Policy for any subsequent matching Policy(/ies), then Policy Chaining is not pertinent in the configuration, but you would also need to set the configuration selection:

    Event Matching: Test events with all filters

The purpose of Policy Chaining in the "OMNIbusEventReader" EventReader is to hand on the captured EventContainer context from one Policy to another through an appropriate series of Policies without having to apply updates and recapture the event from the ObjectServer between each Policy.

How this differs from using the Activate() function from within a Policy to call the next Policy is that Policy Chaining waits for the completion of the each Policy in turn, whereas Activate() can be launched from any stage within a Policy and, when the subsequent Policy has completed, the context is returned to the same point within the first Policy for that to complete. Please see the TechNote "Activate() action function usage" [ link below].

Also, the decision to undertake an Activate() function can be based upon values acquired within the Policy - so the processing route can be more dynamic using Activate(). In Policy Chaining the Policies launched is based upon the values in the event at the time of capture. Policy Chaining is a more rigid and less heavy (in processing terms) approach to a similar design.

Related information

Activate() action function usage

Document information

More support for: Tivoli Netcool/Impact

Software version: 6.1, 6.1.1, 7.1.0

Operating system(s): AIX, HP-UX, Linux, Solaris, Windows

Reference #: 1623713

Modified date: 27 June 2016

Translate this page: