For an overview of IBM Business Monitor's features and architecture, see Part 1.
IBM Business Monitor is designed to accept and process events from any source. Applications can be instrumented to emit events containing a business payload which IBM Business Monitor consumes; it extracts and analyzes the business data from the incoming events for later reporting purposes in the dashboards.
Figure 1. IBM Business Monitor dashboard
There are two classes of products with IBM Business Monitor support: those with first class support, which emit events and generate monitor models, and those with basic support, which only emit events, but leave the monitor model creation up to the user. Part 1 covered the products that offer first class support. In this article, we'll look at those that offer basic support.
Manually authoring a monitor model
The products described in Part 1 all provide the capability to generate a starting-point monitor model for you to help jump start your monitor model authoring experience. Not all products offer this option; in such cases, it is up to the monitor model author to define this manually based on the event definitions. This requires more work at authoring time, but still allows for the same experience for the business users in the dashboards.
- First of all, you must import the XML Schema Definition (XSD) that describes the XML that will be sent in the events (alternately, you could also use Web Services Definition Language (WSDL) files). In the IBM Business Monitor toolkit, create a Business Monitoring project, and then import the XSD file or files into it by selecting Import from the pop-up menu on the Event Definitions folder in your project.
- Create a monitor model by choosing New =>Monitor
Model from the pop-up menu on the Monitor
Models folder in your project. For our example, we used
the names Sales.xsd for the event definition and
Sales.mm for the monitor model. You can ignore
the red Xs indicating errors, as these are to be expected because the
model is not yet complete. Also, ignore the predefined
ActionServicesEvent, which will not be used in this example.
Figure 2. A project containing a monitor model and its event definitions
- To associate the XSDs with the monitor model, open the monitor model
and click the Event Model tab. Select
Add under the table that displays, expand the
folder for the project containing the monitor model (or choose another
project, if the XSDs exist elsewhere in the workspace), select the XSD
you want, and click OK. Your XSD should now be listed
in the table, along with a list of all of the complex type defintions
it contains, as shown in Figure 3.
Figure 3. The event model
- Click the Monitor Details Model tab, and create an Inbound Event definition for your event by choosing New => Inbound Event in the pop-up menu for your monitoring context. Give the event a name and click OK.
- Click the new event, scroll to the Event Parts table,
and click Add. Specify a name, click Select
Type, and then choose the complex type definition you
want to use from the XSD.
Figure 4. An event part
- Define a key for your monitoring context by selecting New => Key and entering a name and type.
- Scroll to the Key Value Expressions table, select
Add, and click the << No Expression
Specified >>>> cell. Choose the attribute of
your event definition that will serve as the key value for the event
by pressing Ctrl + Space, then navigating to the desired field of your
XSD, as shown in Figure 5.
Figure 5. Select key value
- Finally, specify the correlation expression for your inbound event,
which specifies how to map each event arrival to an instance of your
monitoring context, usually done by specifying that a field of the
event equals the key. Select your inbound event, scroll to the
Correlation Expression and press Ctrl + Space to
select the key, the operator, and the field. Then select the
appropriate values for If no instances are found:
(choose Create new instance for creation events or
Treat as error for update events), for If
one instance is found (usually Deliver to the
instance), and for If multiple instances are
found (usually Treat as error), as shown
in Figure 6.
Figure 6. The correlation expression
- Repeat the above steps for each event type that your model needs to process.
Your model should be free of errors in the Problems pane. Your monitor model is now to the point that most monitor model generators would have generated. You can now add metrics, KPIs, cube measures and dimensions, and so on, depending on what your dashboard users want to see, just as you would for a model that had been generated.
Monitoring applications using application adapters
The first kind of business application that we'll look at monitoring is any application that can be accessed through an adapter. IBM WebSphere Adapters are pre-built integration components available from both IBM and IBM business partners built to run directly on IBM integration and application servers and to integrate with IBM tools.
You can monitor events from an enterprise information system (EIS) such as SAP using Rational® Application Developer and WebSphere Adapters. Without requiring the use of mediation products, events are routed to the WebSphere Application Server where they are accessible to IBM Business Monitor for monitoring purposes.
Figure 7. Monitoring an application through an adapter
For example, events from a SAP online catalog order application that processes orders placed by customers can now be monitored directly by IBM Business Monitor without having to generate or implement mediation modules. The WebSphere Adapter for SAP Software listens for order placement activity in the SAP application and forwards events with business payloads to IBM Business Monitor. All of the relevant business activity by customers to place orders occurs in the EIS, and is monitored by IBM Business Monitor. Here is an example of some of the key performance indicators you can track for your application running in the EIS:
- Total number of orders processed
- Total price of all orders placed
- Average price of all orders placed
- Average order processing time
You can install the WebSphere Adapter for SAP Software in Rational Application Developer and use the J2C Bean wizard to generate all required artifacts for monitoring events. These artifacts include, among others, a message-driven J2C Bean and the event schemas that are required for creating a monitor model. The generated adapter application inbound event monitoring application containing the message-driven bean (MDB) (the adapter application) can be deployed to a IBM Business Monitor server or a remote server. The MDB listens for events coming in from the EIS and publishes the events, which are then processed by IBM Business Monitor.
Monitoring events with IBM ODM Decision Server Insights and IBM Business Monitor
IBM Operational Decision Manager (ODM) Decision Server Insights senses patterns in business events and initiates the appropriate actions when a business situation is detected. It excels in processing events where the logic path is unpredictable and requires activity to be detected and correlated by time and sequence across multiple applications. It is also useful in situations where the business logic changes frequently (dynamic processing) and responding to event activity is critical.
WebSphere Business Events V6.2 and later capabilities in IBM ODM Decision Server Insights provide support for direct bi-directional event exchange with IBM Business Monitor. IBM ODM Decision Server Insights can process events and business alerts sent from IBM Business Monitor and initiate the appropriate business actions. It can also send action events to IBM Business Monitor. Actions, defined with graphical tools in IBM ODM Decision Server Insights, identify activities that occur when one or more rules within IBM ODM Decision Server Insights are "true." An action results in a new event being sent to IBM Business Monitor.
Figure 8. Bi-directional event flow between business events and IBM Business Monitor
As an example, IBM ODM Decision Server Insights and IBM Business Monitor can be used together to monitor a customer delivery business. Business users need to react proactively to unexpected business events, such as impending snowstorms or traffic jams, to maximize profits and avoid build up of inventory. These action events can be forwarded to IBM Business Monitor, which will help business owners proactively reduce inventory levels in some regions. Also, when IBM Business Monitor detects Key Performance Indicators (KPIs) that exceed or lag behind expectations, it can send business alerts or events to IBM ODM Decision Server Insights. Decision Server Insights can process these incoming events in conjunction with events from other sources to alert administrators to change delivery patterns.
Actions events sent to IBM Business Monitor are transformed from business events packet format to event XML format so that IBM Business Monitor can consume them. The complete event XML, with the business data, is sent as a JMS text message to the Monitor server for processing.
Monitoring events from CICS
CICS® (Customer Information Control System) is a family of application servers and connectors that provides industrial-strength, online transaction management and connectivity for mission-critical applications. With 10,000+ CICS mainframe licenses worldwide, it is a very significant source of business events. CICS introduced event processing support in CICS Transaction Server for z/OS V4.1.
CICS event processing provides a noninvasive methodology for enhancing business applications. Events are defined and controlled independently of the business logic, which means you can extend existing business applications without modifications. The new event monitor support allows users to identify and select the significant business events that they want to emit and monitor.
Figure 9. Monitor business events from CICS applications
The CICS event binding editor, a part of the CICS Explorer, is used to create event specifications, which are installed in the CICS system. These event specifications are used by the CICS runtime to detect and capture events. Refer to the Event processing topic in the CICS Transaction Server for z/OS, Version 4.1 Information Center for more details about CICS event processing support.
For each event binding a CICS event processing (EP) adapter configuration is specified, which transforms the event data into a suitable output format and routes the events using an appropriate transport mechanism to potential event consumers. Events are routed to IBM Business Monitor using the IBM MQ EP Adapter or HTTP EP Adapter. The events are transformed to an XML format that is consumable by IBM Business Monitor.
Monitoring events from IMS applications
Information Management System (IMS™) is a hierarchical database and information management system with transaction-processing capabilities. IMS Transaction Manager (TM) provides a standard environment for high-performance transaction execution. Many of the world's banks rely on IMS.
You can use IBM Business Monitor to determine business performance by forwarding business data to IBM Business Monitor. You can create applications that can calculate business metrics and monitor key performance indicators (KPI) based on the business data. IMS users can create or modify an IMS business application to identify the event capture points in the application and emit messages that contain the business event to a specified transaction pipe. The enhanced IMS Enterprise Suite SOAP Gateway pulls the business event message from the transaction pipe and sends the event data to IBM Business Monitor.
Figure 10. Monitor business events from IMS applications
IMS V11 supports event monitoring with WebSphere Business Monitor V6.2 or later versions of IBM Business Monitor. This support requires IMS Enterprise Suite SOAP Gateway and the XML-to-bytes mapping function in IBM Rational Developer for System z® V7.6. IMS Enterprise Suite is a separate product that you can order or download free of charge. SOAP Gateway is a component in the suite that enables IMS applications to interoperate outside the IMS environment through SOAP to provide and request services that are independent of platform, environment, application language, or programming model.
Rational Developer for System z provides the tool support for generating the XSD files from the IMS application copybook. The XSD file describes the structure of the incoming event XML from the IMS application. It is used as input to author a monitor model application that consumes the events.
For more information about enabling an IMS application to emit business events and the detailed steps for generating all requisite artifacts for IBM Business Monitor, refer to IMS Enterprise Suite SOAP Gateway.
Monitoring FileNet P8 processes
IBM FileNet P8 V4 provides advanced case management services for business process applications. The FileNet P8 process engine records events associated with running processes to the P8 event log. Similar to the approach used when monitoring IBM MQ Workflow, the FileNet P8 CBE Adapter EAR file, deployed to your IBM Business Monitor server, reads this data and converts the process engine events to event XML that can be consumed by IBM Business Monitor.
Figure 12. Monitor business events from Filenet P8 processes
IBM Business Monitor lets you monitor active and historical IBM FileNet P8 processes. IBM FileNet P8 software includes the CBE adapter described above, some preconfigured dashboard pages for viewing those metrics, and KPIs built on top of those metrics. You can also author your own custom monitor model for each P8 process, if desired.
For more information on how to deploy the FileNet CBE Adapter, and on the FileNet P8 events themselves, refer to the Process Engine Administration section of the IBM FileNet P8 System Overview.
Monitoring events from IBM DataPower
IBM DataPower SOA Appliances are a key element in IBM's holistic approach to service-oriented architecture (SOA). These appliances are IBM's hardware ESBs. The XI50 and XI50B are purpose-built appliances for simplified deployment and hardened security, bridging multiple protocols and performing conversions at wire speed.
DataPower appliances can capture and emits events to facilitate business activity monitoring solutions. DataPower can write events to its own logs, or emit events that can be consumed by products such as IBM Business Monitor. You can easily add an XSLT to each DataPower flow to extract information from each message and send it over JMS to IBM Business Monitor.
Figure 13. Capturing business data flowing through the DataPower appliance
Monitoring events from the Sterling Control Center
Sterling Commerce, an IBM company, helps organizations worldwide increase business agility in their dynamic business network through innovative solutions for selling and fulfillment and for seamless and secure integration with customers, partners and suppliers. The Sterling Control Center gives you a consolidated view of your entire file transfer environment — plus the power to respond quickly and efficiently to exceptions, and changes in your environment.
IBM Sterling Control Center is a management solution for all your file transfer activity. It can manage file transfer and related business process activity across multiple instances of IBM Sterling Connect:Direct, IBM Sterling Connect:Enterprise, IBM Sterling File Gateway, and IBM Sterling B2B Integrator, and many third-party UNIX® and Microsoft® Windows® FTP servers. Sterling Control Center V5.3 can emit events to IBM Business Monitor describing the file transfer activity occurring in many Sterling-branded products, enabling your business users to gain visibility into such activity and to manage SLAs associated with such activity.
Figure 14. Monitor business events from the Sterling Control Center
In Part 1, you learned about the products that offer first-class support for IBM Business Monitor. In Part 2, you learned about additional products that can send events to IBM Business Monitor, and the additional work that is required at model authoring time to enable this. In Part 3, you'll learn how to instrument an application to send events programmatically.
Some scenarios require more work on the part of IT developers than others, but all provide for a rich experience for business users using dashboards to provide insight into the performance of the business and suggesting areas where improvement is needed in business processes, wherever these processes may run.
You can realize the full potential of business process management by adding business activity monitoring to your enterprise, regardless of what kind of business processes you are using, whether hosted in an IBM runtime or in a home-grown environment. Empower your business users by giving them a business dashboard from which they can monitor their business processes and optimize their business results today.
- Implementing event processing with CICS (IBM Redbooks publication)
- Event processing (CICS Transaction Server for z/OS, Version 4.1 product documentation)
- Business Activity Monitoring with WebSphere Business Monitor V6.1: (IBM Redbooks publication) Includes sections on WebSphere Process Server, MQ Workflow, and FileNet.
- Business Event Processing with WebSphere Business Events, Part 5: Integrating Business Events with WebSphere Business Monitor (developerWorks, 2008)
- Integrating WebSphere Sensor Events with WebSphere Business Monitor (WebSphere Sensor Events product documentation)
- Integrating WebSphere Business Events with WebSphere Business Monitor (WebSphere Business Events product documentation)
- WebSphere Business Process Management V7 Production Topologies (IBM Redbooks publication)
- Building IBM Business Process Management Solutions Using WebSphere V7 and Business Space (IBM Redbooks publication)
- developerWorks BPM zone: Get the latest technical resources on IBM BPM solutions, including downloads, demos, articles, tutorials, events, webcasts, and more.
- Get involved in the My developerWorks community. Connect with other developerWorks users while exploring the developer-driven blogs, forums, groups, and wikis.