Call graphs are also captured by the Node.js agent in process snapshots, which describe an instance of a CPU process on an instrumented Node.js node. See Event Loop Blocking in Node.js.
Types of Call Graphs
A call graph can be one of three the following types:
- Full call graphs capture the entire call sequence for the business transaction invocation. In this case, call graphs exist for each monitored node involved in the processing of the business transaction. Periodically collected and diagnostic snapshots are always full call graphs.
Partial call graphs represent the subset of the call sequence for processing a business transaction, typically from the point at which the transaction has been determined to be slow or have errors. Partial call graphs are identified as such in the transaction snapshot.
For Java monitoring, AppDynamics collects hot spot call graphs. Like partial call graphs, hot spot call graphs are retained because a transaction is recognized to be slow, stalled or an error transaction. Unlike partial call graphs, however, a hot spot call graph includes call segments generated before the transaction exceeded a user experience issue threshold. The segments are those that AppDynamics has recognized as potential issues based on analysis of performance patterns for the transaction. (For more information, see information on aggressive slow snapshot collection in Call Graph Settings ).The Controller labels each call graphs so you can see if it is a full call graph, partial call graph, or hot spot call graph.
Note that hot spot call graphs are distinct from the hot spots that appear in the snapshot view. For information on hot spots in the snapshot, see Transaction Snapshots.
Viewing Call Graphs
To view a call graph: