BPM Monitor Model for WebSphere Business Monitor

The BPM software includes a basic monitor model to enable WebSphere Business Monitor to monitor BPM processes. A WebSphere developer uses WebSphere Integration Developer (WID) to customize the BPM Monitor Model for WebSphere and add user-defined fields to monitor.

In WebSphere Business Monitor, the monitor model is a top-level container for monitoring contexts and their associated metrics, keys, counters, stopwatches, triggers, and events. It contains five parts:

The monitor model holds most of the monitor model information.

A monitoring context definition defines all the data collected about a monitored entity as the system is running. Its runtime instances (monitoring context instances) are considered event-processing agents dedicated to monitoring a particular (real or abstract) entity, such as a particular process execution, the state of a particular order, or the stock level of an item in a warehouse. They collect information which, individually or in combination, is useful for making business decisions. The information is extracted from data carried by inbound events, and is held in metrics, counters, and stopwatches, which represent the business measures that a monitoring context collects

BPM Monitor Model for WebSphere

The monitor model provided for BPM monitors active processes and active work items. It monitors the following:

You can add user-defined fields (UDFs) to extend the monitoring.

The monitor model provided by BPM has two types of context:

The monitor model always uses process monitor context at the root level, and work item monitor context at the children context level.

Process Monitor Context

Key

A key is information that characterizes and identifies the real-world entity being tracked by the monitoring context. One or more metrics defined for a monitoring context must be declared key components. The set of these metrics, together with the key components of any ancestor monitoring contexts (parent, grandparent, and so on), defines a monitoring context's key.

The process key, set to the workflow number of each process instance, is the key for process monitor context. It is the correlation data identifying the unique context instance.

Events

Inbound Events

A monitoring-enabled application generates a series of events. To indicate the events of interest to the monitoring context, define inbound events in the monitor model editor. These are actually subscription points or entry points for inbound events in a monitoring context. WebSphere Business Monitor subscribes to the events specified, and delivers them to all event entry points with a matching event subscription.

Configure the event filter so that only processes that start after the specified time will be considered by the monitor model. See Best Practices for instructions. The Common Event Infrastructure (CEI) server decides where to forward the event based on the filter condition.

The following two events are monitored at the process level:

Event Description
Process Start event The Process Start event is based on CBE event P8.BPM.Process.Start. The correlation ID is equal to the key defined in the Key section.

The event action settings depend on the correlation evaluation as follows:

  • If no monitor context instance is found, create one.
  • If one monitor context instance is found, treat as error.
  • If multiple monitor context instances are found, treat as an error.
Process End event

The Process End event is based on CBE event P8.BPM.Process.End. The correlation ID is equal to the key defined in the Key section.

The event action settings depend on the correlation evaluation as follows:

  • If no monitor context instance is found, ignore.
  • If one monitor context instance is found, deliver to it.
  • If multiple monitor context instances are found, treat as an error.

Stopwatch

Key performance indicators (KPIs) often depend on elapsed time, or on the number of occurrences of some situation or event. Define stopwatches and counters, which are specialized metrics, in the monitor model editor to track elapsed time or to count such occurrences.

The Processing Time Stopwatch measures how long the process has been in the system. It is started by the Process Start event, and stopped by the Process End event.

Stopwatch name

Event

Action

Processing Time Stopwatch

Process Start

Start stopwatch.

Processing Time Stopwatch

Process End

Stop stopwatch.

Triggers

A trigger is a mechanism that detects an occurrence and causes additional processing in response. For example, defining a trigger that updates a metric, incrementing a counter, or halting a stopwatch each time a task ends. A trigger can also cause a map to populate an outbound event.

Trigger name

Event

Terminate context

Process End Trigger

Process End

Yes

Evaluate Stopwatch

Recurring wait time (every 5 minutes)

No

Metrics

A metric is a holder for information, usually a business performance measurement, in a monitoring context. A metric can be used alone or in combination with other metrics to define the calculation for a KPI, which measures performance against a business objective. Examples of metrics are: the working duration of a process, the name of the user assigned to a task, a supplier’s response time, and the cost of the risk assessment step in an insurance process.

Metric name

Trigger

Value

Region

 

Region from the Process Start event.

Process Name

 

Process name from the Process Start event.

Process Version

 

Process version from the Process Start event.

Processing Time

Updated by Process End trigger and updated by
Evaluate Stopwatch trigger.

Value of Processing Time Stopwatch (converted to number of days).

Log Name

 

Name of the PE Event Log the CBE Adaptor is reading data from. This is for debugging. Do not remove it.

Timestamp

 

Value of the event timestamp. This is for debugging. Do not remove it.

Sequence Number

 

Value of the event sequence number. This is for debugging. Do not remove it.

 

Work Item Monitor Context

Work item monitor context is created as a child of process monitor context.

Key

A key is information that characterizes and identifies the real-world entity being tracked by the monitoring context. One or more metrics defined for a monitoring context must be declared key components. The set of these metrics, together with the key components of any ancestor monitoring contexts (parent, grandparent, and so on) defines a monitoring context's key.

Activity instance ID is the key for work item monitor context. This key and the process ID are the correlation data that identify the unique context instance. Activity instance ID denotes a specific work item.

Inbound Events

Event Description
Work Item Start event

Based on CBE event P8.BPM.WorkItem.Start. Its correlation is that the process ID and work item ID in this event is equal to the key defined in the Key section.

The event action settings depend on the correlation evaluation as follows:

  • If no monitor context instance is found, create one.
  • If one monitor context instance is found, treat as an error.
  • If multiple monitor context instances are found, treat as an error.

This event creates a new instance of activity monitor context.

Work Item End event

Based on CBE event P8.BPM.WorkItem.End. Its correlation is that the process ID and work item ID in this event are equal to the key defined in the Key section.

The event action settings depend on the correlation evaluation as follows:

  • If no monitor context instance is found, ignore.
  • If one monitor context instance is found, deliver to it.
  • If multiple monitor context instances are found, treat as an error.

This event terminates an instance of activity monitor context.

Activity Start event

Based on CBE event P8.BPM.Activity.Start. Its correlation is that the process ID and work item ID in this event are equal to the key defined in the Key section.

The event action settings depend on the correlation evaluation are as following:

  • If no monitor context instance is found, ignore.
  • If one monitor context instance is found, deliver to it.
  • If multiple monitor context instances are found, treat as an error.
Activity Locked event

Based on CBE event P8.BPM.Activity.Locked. Its correlation is that the process ID and work item ID in this event are equal to the key defined in the Key section.

The event action settings depend on the correlation evaluation as follows:

  • If no monitor context instance is found, ignore.
  • If one monitor context instance is found, deliver to it.
  • If multiple monitor context instances are found, treat as an error.
Activity Unlocked event

Based on CBE event P8.BPM.Activity.Unlocked. Its correlation is that the process ID and work item ID in this event are equal to the key defined in the Key section.

The event action settings depend on the correlation evaluation as follows:

  • If no monitor context instance is found, ignore.
  • If one monitor context instance is found, deliver to it.
  • If multiple monitor context instances are found, treat as an error.
Activity End event

Based on CBE event P8.BPM.Activity.End. Its correlation is that the process ID and work item ID in this event are equal to the key defined in the Key section.

The event action settings depend on the correlation evaluation as follows:

  • If no monitor context instance is found, ignore.
  • If one monitor context instance is found, deliver to it.

  • If multiple monitor context instances are found, treat as an error.

Activity Failure event

Based on CBE event P8.BPM.Activity.Failure. Its correlation is that the process ID and work item ID in this event are equal to the key defined in the Key section.

The event action settings depend on the correlation evaluation as follows:

  • If no monitor context instance is found, ignore.
  • If one monitor context instance is found, deliver to it.
  • If multiple monitor context instances are found, treat as an error.

Stopwatch

Processing Time Stopwatch measures how long the work item has been locked in the system.


Stopwatch name

Event

Action

Processing Time Stopwatch

Activity Locked

Start stopwatch.

Processing Time Stopwatch

Activity Unlocked

Stop stopwatch.

Processing Time Stopwatch

Activity End

Reset stopwatch.

Processing Time Stopwatch

Activity Failure

Reset stopwatch.

Processing Time Stopwatch

Work Item End

Stop stopwatch.

Processing Time Stopwatch

Work Item Start

Reset stopwatch.

Idle Time Stopwatch measures how long the work item has been in the system and not in the process (locked) state.


Stopwatch name

Event

Action

Idle Time Stopwatch

Activity Start

Start stopwatch.

Idle Time Stopwatch

Activity Locked

Stop stopwatch.

Idle Time Stopwatch

Activity Unlocked

Start stopwatch.

Idle Time Stopwatch

Activity End

Reset stopwatch.

Idle Time Stopwatch

Activity Failure

Reset stopwatch.

Idle Time Stopwatch

Work Item Start

Reset stopwatch.

Idle Time Stopwatch

Work Item End

Stop stopwatch.

Triggers

Trigger name

Event

Terminate context

Activity Locked Trigger

Activity Locked

No

Activity Unlocked Trigger

Activity Unlocked

No

Activity End Trigger

Activity End

No

Activity Failure Trigger

Activity Failure

No

WorkItem End Trigger

Work Item End

Yes

Evaluate Stopwatch

Recurring wait time (every 5 minutes)

No

Metrics

The following metrics related to activity. Their values are set by different events according to PE semantics.

Metric name

Trigger

Value

Region

 

Region from the Work Item Start event (when work item is created).

Process Name

 

Process name from the Work Item Start event (when work item is created).

Map

 

Map from the Activity Start event (when work item is enqueued).

Step

 

Step from the Activity Start event (when work item is enqueued).

Queue

 

Queue from the Activity Start event (when work item is enqueued).

Operation

 

Operation from the Activity Start event (when work item is enqueued).

Processing Time

Updated by Activity End trigger,
Updated by Evaluate Stopwatch trigger,
Updated by Activity Unlocked trigger,
Updated by Activity Failure trigger

Value of Processing Time Stopwatch (converted to number of days).

Idle Time

Updated by Evaluate Stopwatch trigger,
Updated by Activity Locked trigger

Value of Idle Time Stopwatch (converted to number of days).

Total Processing Time

Updated by Activity End trigger,
Updated by Evaluate Stopwatch trigger,
Updated by Activity Locked trigger,
Updated by Activity Failure trigger,
Updated by Activity Unlocked trigger

Processing Time + Idle Time.

User

 

Note: This metric is updated by several events as follows:

  • Username from WorkItem Start event (when work item is created).
  • Bounduser from Activity Start event (when work item is enqueued).
  • Username from Activity Locked event (when work item is locked).
  • Bounduser from Activity Unlocked event (when work item is unlocked)

Log Name

 

LogName from Work Item Start event. For debug use. Do not delete it.

Timestamp

 

Timestamp for the event. For debug use. Do not delete it.

Sequence Number

 

Sequence number for the event. For debug use. Do not delete it.

 

Data mart model

The data mart model is the part of the monitor model that defines the cubes used for storing, retrieving, and analyzing the data gathered over time.

Cubes

A data mart model contains one cube for each monitoring context definition. Each cube tracks all the information the monitoring context collects over time. For each activity you monitor, there is a cube for that activity monitoring context. The cubes are named:

<process name> cube,
<activity1 name> cube,
<activity2 name> cube…

Cube for Process

Cube name: BPM Process MC Cube
Dimensions: Process (Levels: Region, Process name, Process version)
Measures: Average Processing Time

Cube for Work Item

Cube name: BPM Work Item MC Cube
Dimensions: User (Level: User)
Queue (Levels: Queue, Operation)
Activity (Levels: Region, Process name, Map, Step)
Measures: Average Processing Time
Average Idle Time
Average Total Processing Time

Fact and measures

Facts are numeric data that can be examined and analyzed. A fact defines the cells in a cube data structure and associates them with metrics, counters, and stopwatches that supply the values. Measures are calculations based on facts. A measure points to a fact and specifies an aggregation function (such as average or sum). Each cube has a fact table as follows:

<process name> fact table, with Process Instance ID as fact.

<activity1 name> fact table, with Activity Id and Activity Instance ID as fact.

<activity2 name> fact table, with Activity Id and Activity Instance ID as fact.

Dimension

Dimensions are data categories used to organize and select instances for reporting and analysis. The primitive monitor model has no predefined dimensions.

Deployment of BPM Monitor Model for WebSphere

Deploy the monitor model following the general monitor model installation procedure. For more information, refer to the Installing Monitor Model section in the Information Center of IBM WebSphere Business Monitor documentation.