Monitoring your business applications, Part 2: Products offering basic integration with WebSphere Business Monitor

WebSphere® Business Monitor dashboards provide insight into the performance of your business based on events sent from your applications. In Part 1, you learned which IBM® products offer out-of-the-box business event emission instrumentation. In Part 2, you'll learn which products offer basic integration and how to manually modify them to enable you to monitor events using WebSphere Business Monitor.

John W. Alcorn (jalcorn@us.ibm.com), Senior Software Engineer, IBM

author photo

John Alcorn is the lead architect for the IBM Business Activity Monitoring (BAM) platform. He has worked as a software engineer with IBM for 19 years, with more than 14 years on WebSphere products, including roles in both product development and software services. John has been a technical leader with the IBM Business Monitor product for seven years, and works closely with the wider IBM Business Process Management (BPM) team.

John is IBM-certified in XML technologies, SOA technologies, and in multiple WebSphere® products, and is Sun-certified in Java™ programming. He is currently privileged to work with an excellent team of software engineers at IBM's Research Triangle Park lab in North Carolina.


developerWorks Contributing author
        level

Latha Sivakumar (lsivakum@us.ibm.com), Advisory Software Engineer, IBM

Latha Sivakumar photoLatha Sivakumar is currently a member of the WebSphere DataPower development team. Prior to that, she was a developer on the WebSphere Business Monitor development team, focusing on integration with other IBM products.



04 May 2011

Overview

For an overview of WebSphere Business Monitor's features and architecture, see Part 1.

WebSphere Business Monitor is designed to accept and process events from any source. Applications can be instrumented to emit events containing a business payload which WebSphere Business Monitor consumes; it extracts and analyzes the business data from the incoming events for later reporting purposes in the dashboards.

Figure 1. WebSphere Business Monitor dashboard
WebSphere Business Monitor dashboard

There are two classes of products with WebSphere 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.

  1. 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 WebSphere 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.
  2. 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
    A project containing a monitor model and its event definitions
  3. 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
    The event model
  4. 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.
  5. 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
    An event part
  6. Define a key for your monitoring context by selecting New => Key and entering a name and type.
  7. 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
    Select key value
  8. 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
    The correlation expression
  9. 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 WebSphere application adapters

The first kind of business application that we'll look at monitoring is any application that can be accessed via an adapter. Adapters for IBM WebSphere 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 tooling.

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 WebSphere Business Monitor for monitoring purposes.

Figure 7. Monitoring an application via an adapter
Monitoring an application via an adapter

For example, events from a SAP online catalog order application that processes orders placed by customers can now be monitored directly by WebSphere 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 WebSphere Business Monitor. All of the relevant business activity by customers to place orders occurs in the EIS, and is monitored by WebSphere 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 WebSphere 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 WebSphere Business Monitor.


Monitoring events with WebSphere Business Events and WebSphere Business Monitor

WebSphere Business Events 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 provide support for direct bi-directional event exchange with WebSphere Business Monitor. WebSphere Business Events can process events and business alerts sent from WebSphere Business Monitor and initiate the appropriate business actions. It can also send action events to WebSphere Business Monitor. Actions, defined in WebSphere Business Events using graphical tools, identify activities that occur when one or more rules within WebSphere Business Events are "true." An action results in a new event being sent to WebSphere Business Monitor.

Figure 8. Bi-directional event flow between WebSphere Business Events and WebSphere Business Monitor
Bi-directional event flow between WebSphere Business Events and WebSphere Business Monitor

As an example, WebSphere Business Events and WebSphere 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 WebSphere Business Monitor, which will help business owners proactively reduce inventory levels in some regions. Also, when WebSphere Business Monitor detects Key Performance Indicators (KPIs) that exceed or lag behind expectations, it can send business alerts or events to WebSphere Business Events. WebSphere Business Events can process these incoming events in conjunction with events from other sources to alert administrators to change delivery patterns.

Actions events sent to WebSphere Business Monitor are transformed from WebSphere Business Events packet format to event XML format so that WebSphere 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.

Please refer to the WebSphere Businesss Events Information Center topic Business Event Processing with WebSphere Business Events, Part 5: Integrating Business Events with WebSphere Business Monitor for more information about sending events to monitor from WebSphere Business Events.


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
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 WebSphere Business Monitor using the WebSphere MQ EP Adapter or HTTP EP Adapter. The events are transformed to an XML format that is consumable by WebSphere 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 WebSphere Business Monitor to determine business performance by forwarding business data to WebSphere 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 WebSphere Business Monitor.

Figure 10. Monitor business events from IMS applications
Monitor business events from IMS applications

IMS V11 supports event monitoring with WebSphere Business Monitor V6.2 or later. 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 WebSphere Business Monitor, refer to IMS Enterprise Suite SOAP Gateway.

You can also take a tutorial that demonstrates using WebSphere Business Monitor to monitor an IMS application.


Monitoring events from WebSphere Sensor Events

WebSphere Sensor Events is a server-based product used to implement sensor solutions for improving asset management and inventory processes within business networks. The WebSphere Sensor Events server can manage RFID information and events and forward the business data to other applications such as WebSphere Business Monitor. These business events can provide insight into things like inventory levels of various parts used by a manufacturing company, enabling business users to order new parts before an out-of-stock condition can occur, for example.

From tag-read events, WebSphere Sensor Events V6.2 or later generates event XML, which can be consumed by WebSphere Business Monitor. The event XML is published to either a JMS topic or to sensor server output channels. The event carries tag-read and associated asset information.

WebSphere Sensor Events sends such tag-read events to WebSphere Business Monitor using WebSphere MQ. An application developer can enable or disable the generation of event XML that can be consumed by WebSphere Business Monitor using the WebSphere Sensor Events administrative console. WebSphere Business Monitor users will be able to create and view event reports from the Business Space or WebSphere Portal dashboards.

Figure 11. Sending tag-read events from WebSphere Sensor Events to WebSphere Business Monitor
Sending tag-read events from WebSphere Sensor Events to WebSphere Business Monitor

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 WebSphere MQ Workflow, the FileNet P8 CBE Adapter EAR file, deployed to your WebSphere Business Monitor server, reads this data and converts the process engine events to event XML that can be consumed by WebSphere Business Monitor.

Figure 12. Monitor business events from Filenet P8 processes
Monitor business events from IMS Applications

WebSphere Business Monitor lets you monitor active and historical IBM FileNet P8 processes. IBM FileNet P8 software includes the CBE adapter described above, a global monitor model (and its project interchange file, in case you want to customize it) that consumes the events emitted by that adapter and extracts the appropriate metrics, 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 WebSphere DataPower

WebSphere 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 WebSphere Business Monitor. You can easily add an XSLT to each DataPower flow to extract information from each message and send it over JMS to WebSphere Business Monitor.

Figure 13. Capturing business data flowing through the DataPower appliance
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 WebSphere 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
Monitor business events from the Sterling Control Center

Summary

In Part 1, you learned about the products that offer first-class support for WebSphere Business Monitor. In Part 2, you've learned about additional products that can send events to WebSphere 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.

Resources

Learn

Discuss

  • Get involved in the My developerWorks community. Connect with other developerWorks users while exploring the developer-driven blogs, forums, groups, and wikis.

Comments

developerWorks: Sign in

Required fields are indicated with an asterisk (*).


Need an IBM ID?
Forgot your IBM ID?


Forgot your password?
Change your password

By clicking Submit, you agree to the developerWorks terms of use.

 


The first time you sign into developerWorks, a profile is created for you. Information in your profile (your name, country/region, and company name) is displayed to the public and will accompany any content you post, unless you opt to hide your company name. You may update your IBM account at any time.

All information submitted is secure.

Choose your display name



The first time you sign in to developerWorks, a profile is created for you, so you need to choose a display name. Your display name accompanies the content you post on developerWorks.

Please choose a display name between 3-31 characters. Your display name must be unique in the developerWorks community and should not be your email address for privacy reasons.

Required fields are indicated with an asterisk (*).

(Must be between 3 – 31 characters.)

By clicking Submit, you agree to the developerWorks terms of use.

 


All information submitted is secure.

Dig deeper into Business process management on developerWorks


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=1
Zone=Business process management, WebSphere, Industries
ArticleID=657658
ArticleTitle=Monitoring your business applications, Part 2: Products offering basic integration with WebSphere Business Monitor
publish-date=05042011