
A monitoring process is a special kind of integration process that you use as part of Business Activity Monitoring (BAM). You use a monitoring process to monitor the milestones in a business process. The business process can be distributed across multiple applications. When a milestone is reached, the applications each publish events, to which a central monitoring process is subscribed.
In monitoring processes you can define that alerts are triggered if particular events occur or deadlines are missed. Furthermore, you can define conditions for creating alerts. You can also include information shipped by Business Intelligence in the conditions, for example, whether a customer is an A customer ("Gold Customer").
Only use monitoring processes to monitor events from applications. Do not use a monitoring process to monitor events from other monitoring processes. These kinds of monitoring process hierarchies are not supported.
Typical Structure
A monitoring process usually comprises the following elements:
You can group together recurring sequences in step groups. Doing so makes it easier for you to define monitoring processes and improves the clarity of the monitoring processes.
See: Creating a New Object .
Define and Correlate Event Messages
See: Starting an Integration Process .
If various different event messages are able to start the monitoring process, define a starting receive step for each one.
See:
Each of these receive steps must use an activated correlation. A receive step can in turn activate a correlation.
Query Data from Business Intelligence
See: Transformation Step
You can use the result in a condition and make further processing dependent on the result.
Defining a Condition
Insert a switch and for each branch define the relevant condition and the action that is to be executed when the condition is satisfied.
You can define the following types of deadline monitoring with the following type of alerting:
Define an Alert - Process Continues to Wait
Define an Alert - Processing Continues
You can query the value of this container element in a later step to determine which branch of the fork was processed at runtime.
For example, you could insert a control step to trigger an alert.