We have enhanced the Business Process Metrics facility even further by giving the metric calculation access to the current state of the Business Process and other metrics.  This opens up even more possibilities for deriving metrics from the Business Process data stream.



One example of this new feature would be to track User’s Think Time, where think time is defined as the sum of durations from the time a previous request completes until the user takes the next action, and let’s assume that we can calculate this by taking the total business process duration and subtracting the total time executing HTTP requests and assume that metric1 already calculates the total request time.  To create our new metric we configure it as shown:


name: Think-time

matchExpr: true

evaluateExpr: businessProcess.duration - businessProcess.metric1

contextClassName: <empty>



  1. The Business Process definition can contain up to 3 metrics definitions.  In the config metrics[0] is accessed as businessProcess.metric1, metrics[1] as businessProcess.metric2, and metrics[2] as businessProcess.metric3
  2. The full context available to the metric calculation now includes:
      metricValue – the current value of this metric

       data – the current monitoring datapoint in context

        businessProcess – the current state of the business process

        context – an arbitrary Java object (define the fully-qualified class name in the config)