Many application performance monitoring solutions offer the ability to filter fixed time interval collected metrics (measurement samples) by time slice, source and metric name in live custom dashboards. But since metrics are observations and not actual execution behavior recordings it is not possible to recreate a life-like experience (viewing) of activity events unfolding that is filtered to a particular type of activity (transaction, task, action, job, etc). And it is simply impossible to recalculate metrics that reflect a specific context you are interested in as a metric can be (and generally is) updated in multiple contexts. How does one ask how many JDBC/SQL operations per second occurred as a result of business activity X when a single metric represents the business activity X and another metric the database activity? You simply can’t answer this with metrics as the cause-effect chain is missing. This is the result of “the world is flat” metric model viewpoint held by nearly all traditional application performance monitoring vendors.

One way around this is to partition up the deployment such that only one type of activity is deployed to an application runtime. Operational, this is not practical, especially when a system consists of 1,000 of activities, which is typical of enterprise applications. It would also be extraordinary to take such a deployment approach solely for the sake of monitoring, ignoring the operation overhead it presents. There are many valid reasons for partitioning and modularizing applications into service types and service runtime instances. Monitoring is not one.

An approach that can meet this important challenge is one that involves (1) recording of the software’s behavior, (2) fast playing back of the recorded behavior with contextual filtering and finally (3) time synched (normal speed) playback of the re-recording for experiential learning purposes. You can think of it along the same lines of video editing, but instead of removing scenes and frames we eliminate playback events using the very same intelligently activity metering filter techniques available at the time of actual recording in production. Below is a graphic that visualizes the process....

http://www.jinspired.com/site/rewriting-application-performance-monitoring-histories-with-record-playback