Respond to events in real-time through event processing with CICS Transaction Server for z/OS (CICS TS). This article summarises our support for event processing and highlights new capabilities introduced in CICS TS V5.4.

Importance of event processing

Analyst reports have highlighted that event-driven IT and event processing is poised to play a significant role in enterprise systems. In ‘Use an Event-Driven Approach to Deliver Superior Customer Experience’ Gartner observe that
“responding to events as they occur in real time is becoming key to sustain a competitive advantage and deliver superior customer experience”.

Gartner report G00323118

This idea is later reinforced in ‘Follow the Leaders: Digital Business Innovation Is Event-Driven’, where they conclude that
“Event-driven IT could make your organization more innovative and accelerate its transformation into a digital business”

Gartner report G00323880

CICS TS customers are well-placed to take advantage of event-driven approaches, using the CICS event processing support that was initially introduced in CICS TS V4.1, and has been enhanced over subsequent releases, including the latest release, CICS TS V5.4. CICS events can give real-time insight into business and system processing, and provide input into making better and more timely business decisions. CICS provides support for
  • Business events, also known as application events. These can be emitted from your applications when some business processing of interest occurs, such as a payment being made or a claim being received. Application events are specified and managed using the Event Binding Editor in CICS Explorer.
  • Policy events, which can be emitted from a CICS system when an interesting situation occurs, such as a change in system state, or a task exceeding a specified resource threshold. Policy events are defined and managed using the new Policy Definition Editor in CICS Explorer 5.4.
Both types of events can be defined and enabled without the need to make changes to applications or the system. It is not necessary to recompile applications in order to capture events about their processing.

Introducing CICS Policy System Rules

A significant enhancement in CICS TS V5.4 is the introduction of system rules as a new kind of CICS policy rule. This provides three benefits:
  1. It extends CICS Policy support to cover policy rules that apply to the CICS system as a whole, in addition to the existing rules concerning behaviour of tasks that have been available since CICS TS V5.1.
  2. It unifies system events with CICS policies and simplifies their configuration.
  3. It provides a new policy definition editor for easier definition and management of policy rules, both system rules and task rules.
Figure 1 shows a screen shot of the Policy Definition Editor being used to define some policy system rules. As an example, the Message system rule that is shown here, and discussed later, was defined and deployed in less than 5 minutes.
Screenshot from the Policy Definition Editor showing the Overview tab for a policy with 3 system rules

Figure 1: The new policy definition editor, showing a policy containing three system rules

Policy system rules are an aid to system management, and can help to provide control of the CICS system. You can learn more about policy system rules from the Using CICS policy system rules to monitor system health blog post, which also includes a simple example showing just how easy it is to set up a rule.

Other enhancements in CICS V5.4

Although support for policy system rules is a major improvement, it is by no means the only event processing-related enhancement in CICS TS V5.4, and this article introduces some of those other significant enhancements.

New CICS-provided Transient Data Queue EP Adapter

It is now easy to send event data to a transient data queue, using the ‘TD Queue’ Event Processing Adapter (or TDQ EP Adapter). This can make events available for consumption by reading from a transient data queue, including taking advantage of transient data triggering, so provides further flexibility in how you can choose to process CICS events. The TDQ EP Adapter supports many of the existing CICS event formats, making it a straightforward way to test that events are emitted as you expect, in the desired format, and allowing a choice of formats to be consumed from the queue. Figure 2 shows the event formats supported by the TDQ EP Adapter. In this example, the format selected is the Decision Server Insights Event format, which is discussed in the next section.
A view of the Resource Perspective of the CICS Explorer, showing an EP Adapter resource definition, where the Adapter type is TD Queue, and the Decision Server Insights Event format has been selected from a drop-down list

Figure 2: Drop-down showing the event formats supported with the Transient Data Queue EP Adapter

Integrate with IBM ODM using the Decision Server Insights event format

CICS event processing provides a number of options for emitting events that allow you to seamlessly integrate with other products, to extend your event processing solutions. For example, you can use IBM Operational Decision Manager (ODM) Decision Server Insights to look for significant combinations of events, such as an unusual sequence of banking transactions. Or even to detect when an event does not happen, such as when a customer shows interest in a product but does not proceed to make a purchase. A new ‘Decision Server Insights Event’ format (shown selected in Figure 2) is supported in CICS TS V5.4, and is also available via PTF on earlier CICS TS V5 releases (see APAR PI55134 for CICS TS V5.3, or APAR PI55133 for CICS TS V5.1 and V5.2), allowing events from CICS to be processed by Decision Server Insights. You can learn more from a series of CICS Developer Center posts starting with More rapid business insight with ODM and CICS integration.

Easier customization of emitted CICS events

One of the strengths of CICS event processing has always been that if the provided event processing adapters do not meet your needs, you can write a custom EP adapter to control the formatting and routing of the events. Until now, this has required you to write your own event formatting, but often the main reason for choosing a custom EP adapter is to send events in a fairly standard format over a different transport mechanism or to a different kind of consumer. As of CICS TS V5.4, you can have CICS process the event into a character format, based on the formatting requested in the event specification. A set of DFHEP.CHAR.nnnnn containers are now passed to a customer EP adapter in addition to the previous set of DFHEP.DATA.nnnnn containers, giving the custom EP adapter the option of handling all of the formatting itself, or of making use of the printable character form where CICS has done most of the hard work.

Ability to capture and emit an entire message

According to the results of our recent EP Usage survey, a popular type of event is the Message event, which allows you to emit an event based on (almost) any of the CICS (DFH and EYU) messages; the few exceptions being things like messages issued early during CICS startup. This function is now available as a policy system rule, and provides a convenient way to drive additional actions when system behaviour occurs that is reported via a CICS message. If you make use of the Message system rule in the new Policy Definition Editor, you don’t even need to figure out which inserts you need: the emitted event will automatically contain all the message inserts as separate data items plus the complete message text as one concatenated data item. Figure 3 shows a message system rule that will capture events from some of the dynamic LIBRARY audit messages, using the ‘starts with’ option to select a set of messages.
Screen shot of a policy definition, showing the rules tab with a message rule named Dynamic_LIBRARY_Details, for messages that start with DFHLD05

Figure 3: Example of a message policy system rule.

The inclusion of the full message text in the event was in response to a Request for Enhancement (RFE), as were other extensions to event processing in CICS TS V5.4, such as the TDQ EP adapter described earlier. If there is other CICS event processing functionality that you would find useful, please raise a Request for Enhancement.. To illustrate many of these event processing enhancements working together, Figure 4 shows an extract of the event generated by this message policy system rule, when written to a transient data queue in DSIE format (and shown in an XML viewer).
A snippet of formatted XML taken from the Decision Server Insights Event emitted when a message about dynamic LIBRARY resources is issued

Figure 4: An example of part of a DSIE format event emitted by a message system rule.

How are CICS events being used?

Customers are using CICS events for a broad spectrum of scenarios, including:
  • sending email notifications about changes in the state of critical files
  • automating actions to be taken when certain system conditions occur
  • logging the data required by government regulations
  • providing financial customers with relevant alerts
  • monitoring the success of sales promotions
  • and many more
The CICS development team have been running a mini survey from which we have learned that about 56% of respondents have been using events in production, and that 74% of CICS events are being consumed within z/OS with 26% consumed outside IBM Z on distributed platforms. Amongst those who are not yet using CICS event processing, 15% plan to do so in the next 6 months, and a further 15% within the next year.

Conclusion

As you can see, we continue to focus on improving our CICS event processing support, introducing greater simplicity with the Policy Definition Editor, policy system rules, and the ability to capture full message text, and greater flexibility with the new transient data queue EP adapter, the integration with IBM ODM Decision Server Insights, and pre-formatting the data for custom EP adapters. Some users are already leveraging CICS events to provide operational data to their analytics platforms, and in future, we see greater opportunities for CICS events as a non-invasive way of providing data for analytics and cognitive solutions, including Machine Learning.

Share your thoughts!

We are interested to learn more about how you are getting on with using CICS events, or anything that is limiting you from taking advantage of the capability, so please share your thoughts in the comments below or by taking our Mini Survey.

2 comments on"New event processing capabilities with CICS TS V5.4"

  1. Jim Geraghty August 14, 2017

    Delighted to see EP is going strong, Catherine.

    • Catherine Moxey August 23, 2017

      Many thanks, Jim – yes, the capabilities and usages of CICS events continue to expand!

Join The Discussion

Your email address will not be published. Required fields are marked *