Deep dive gathers detailed data about individual Transaction instances and the
method invocations within a business transaction. Here are a few reasons when
deep dive might be needed over transaction profiling:
-
Instance level monitoring – you want to capture performance for individual user transactions, with no aggregation or averaging.
-
Trace problem Transactions across JVMs and remote hosts – follow problem transactions across application tiers to diagnose complex problems in a distributed environment.
-
You need to understand the context around slow methods, like slow SQL.
-
Find sporadic problems that are hidden by averaging transactions.
By default, deep dive tracing must be enabled by the user. This is done to
reduce overhead by only collecting diagnostic level performance information when
it's needed. In general, we recommend starting with Section 2.1.1, “Lightweight Transaction Profiling”, identifying the transactions that are
degraded, and then using deep-dive as a diagnostic solution.






