Using the Transaction Trace Viewer
The Transaction Trace Viewer shows trace information for transactions that meet the criteria you specified for the trace session.
apmsaas
The Transaction Trace Viewer shows trace information for transactions that meet the criteria you specified for the trace session.
2
2
The table in the top pane of the Transaction Trace viewer lists transactions that were traced during the session. You can sort the rows by column by clicking on the column header. New transactions are inserted into the table in sorted order.
This table lists the columns in the transaction table:
Field | Description |
Type | The type of information in the trace row, one of:
Transaction Trace (T)
Error (E)
Sampled (R)
A transaction that random sampling chooses. Stalled (S)
A stalled transaction
Error data only appears if ErrorDetector is enabled. Asterisk
If an asterisk appears after the type symbol, some of the components in the transaction were truncated or clamped. Only transactions of types T and E can be clamped. The types that are listed here apply to transactions available in Live mode. When querying historical transactions, other transaction types are available. |
Domain | Domain to which the traced agent is mapped. |
Host | Host on which the traced agent is running. |
Process | Agent Process name |
Agent | Agent Name |
Timestamp | Start time, in the agent computer system clock, of the invocation of the root component. |
Duration | Wall clock execution time of the root component |
Description | The URL that was invoked to initiate this transaction, or the Introscope path to the component that initiated the transaction. |
UserID | The ID of the logged-in user that is running the transaction (if it is configured and available). |
The Transaction Tracer window includes three tabs:
- Summary view
- Trace view
- Tree view
Summary View
The first time that you select a transaction in the transaction table, the Summary View opens. When you select a transaction that has been opened before, it opens in the most recently selected view.
This information appears for the currently selected transaction in each tab:
- The fully qualified agent name
- Start time, in the agent computer system clock, of the invocation of the root component
- Execution time of the root component in milliseconds
Summary View shows metrics for the components in the selected transaction. Metrics include the path; number of calls; call length in milliseconds; and the minimum, average, and maximum call times. Double-click one of the metrics that are listed in the table view to open the metric in the Browse tree.
At the bottom of the Trace window, the Transaction Trace status bar shows:
- Number of transactions that were collected in the session.
- Filter criteria for the Transaction Trace session.
- Remaining time before the current session times out.
For correlated transaction components, the Summary View and Tree View tabs display only the scope of the first JVM. The Trace View tab displays the entire scope of related transaction components. Be aware of this limitation when switching from Trace View to the other tab views.
Trace View
Trace View shows a selected transaction in a graphical stack display of the components that make up the transaction. When you select one of the components, you can see component details in the bottom pane of the viewer.
The Trace View shows:
- Each component in the transaction as a bar
- Percentage of total transaction execution time for each component
- Calling relationships between componentsThe bars for components are displayed from top to bottom in calling order.
- Transaction sequence over timeThe placement of components from left to right indicates sequence. Relative wall clock time in milliseconds appears across the top of the Transaction Snapshot.
- Deep visibility components, which Introscope automatically discovers and instruments using smart instrumentation without the use of PBDs.Smart Instrumentation is available only for Java agents, not .NET agents.
- Errors within transactions (Detect and Analyze Errors and Stalls). If ErrorDetector is enabled.Red slices in the Transaction Snapshot represent errors within transactions.The default time range for traces in live mode is 20 minutes. Traces older than 20 minutes are not displayed in live mode. Traces are aged out (not shown) after they are more than 20 minutes old.
In the Trace View you can perform these actions:
- Hover your mouse pointer over a component to open a tooltip.
- Right-click a component to open the Metrics Tree and view component metrics.
- Select a component in the Trace View to open the Transaction Component Details pane.
Transaction Component Details
The component details of the Trace View show this information:
- TypeHigh-level component (for example, EJB, Servlet, JSP in Java, and ASPX in .NET)
- NameName of the component.
- PathFull resource name of component.
- DurationThe execution time of the selected component. Default unit is milliseconds.
- Timestamp (relative)Start time, in the agent host computer system clock, of the invocation of the selected component.
- % of total transaction timePercentage of total transaction time that the selected component takes.
- PropertiesAny optional properties reported by the component (for example, URL, URL Query, Dynamic SQL) or defined for collection in the agent profile (User ID, Request Header,RequestParameter, or Session Attribute). You can select the text of any field in the Properties details and can copy it using CTRL+C.
Property | Description |
User ID (Servlet, JSP, ASPX) | User ID of the user invoking the HTTP servlet request. |
URL (Servlet, JSP, ASPX) | URL passed through to the servlet or JSP, not including the query string (text after the '?' delimiter in the URL |
URL Query (Servlet, JSP, ASPX) | Portion of the URL that specifies query parameters in the HTTP request (text after the '?' delimiter in the URL) |
Session ID (Servlet, JSP, ASPX) | The HTTP session ID associated with the servlet request, if any. |
Dynamic SQL (Dynamic JDBC or ADO.NET Statements, when SQL Agent is installed). | Generalized dynamic SQL statement, as it would be seen in the aggregate form in the SQL agent. |
Callable SQL (Callable JDBC or ADO.NET statements, when SQL Agent is installed). | Callable SQL (with the '?' still present). |
Prepared SQL (Prepared JDBC or ADO.NET statements, when SQL Agent is installed). | Prepared SQL (with the '?' still present). |
Method (Blamed Tracers; everything but servlets, JSPs and JDBC statements for Java, ASPX and ADO.NET for .NET) | Name of the traced method |
Is Unmonitored | Smart instrumentation discovers the name of the traced component. No metrics are collected for this component. |
Trace Truncated | Transaction trace is truncated at the last method in the trace. The truncation is typically due to deep recursive calls. |
Auto Trace Trigger Criteria | The trigger for Introscope to collect an automatic transaction trace. For example, an error or exceeded component response time when ComponentTimeAutoTraceTriggerTracer tracer is deployed.
When ComponentTimeAutoTraceTriggerTracer is the trigger, Auto Trace Trigger Criteria displays Response time of < .component name> exceeds threshold <value >displays the following triggers when agents collect cross-process transactions in automatic transaction traces:
|
Instrumentation Level | Smart instrumentation level at which a transaction is discovered. |
Method Level Score | The smart instrumentation level that correlates to the score the Introscope scoring algorithm assigns to a deep visibility component method. Introscope can display deep visibility component methods having varying scores within a transaction trace, error, or stall. For example, a transaction discovered using medium level can display methods with a method level scores medium and low. |
Tooltips in the Transaction Trace Viewer
You can hover your cursor over any of the individual components, or layers, of the graphical depiction of a transaction. A tooltip displays details about the component.
The tooltip displays this information:
- Path
- Duration
- Timestamp (relative)
- % of total transaction time
Sequence View
The Sequence View tab displays transaction components in the order in which a process calls the components.
Correlation IDs in Cross-Process Transactions
Introscope Workstation uses a unique identifier, the correlation ID, to link traced frontend and backend transactions. The order in which frontends call backends in a transaction determines the sequencing of this ID.
You can use this correlation ID to recognize and trace the path of linked components in a transaction trace. This information can provide insight into which calls might be the source of a slow or stalled transaction.
More information:
Cross-Process Transaction TracingClamped Transactions
A clamp property prevents unusual transaction trace results from consuming too many cycles. The clamp on transaction trace components is set by default at 5000. This property,
introscope.agent.transactiontrace.componentCountClamp
, is specified in the IntroscopeAgent.profile. You can configure Java agent and .NET agent properties.Transaction trace components that exceed the
introscope.agent.transactiontrace.componentCountClamp
limits are marked with an asterisk.Things to notice:
- The first row of traces is selected.
- The Type symbol is marked with an asterisk. The asterisk signifies some of the components in the transaction were truncated or clamped.
- A tooltip indicates how many components were truncated. In the example above, 15 of the components in the selected trace exceeded the number theintroscope.agent.transactiontrace.componentCountClampproperty specified.
- The components which were not truncated appear in the Summary View tab at the bottom of the viewer.
- Each agent has anIsClampedheuristic value, with 0=not clamped, and 1=clamped.
Appearance of Exported XML File When Transactions are Clamped
When a trace component is clamped, the exported XML file is well-formed, and includes a parameter like:
<Parameter Value="15" Name="Components Not Shown"/>
To see a tooltip with more information about a trace:
- Select one of the traces in the table.
- Hover your cursor over the selected trace.The tooltip displays trace type and number of truncated, or clamped, components.
To sort the traces by type:
- Click the heading of the Type column in the table.
Searching for Clamped Transactions
You can search for clamped transactions by issuing a historical event query. Use a string example in your query, as shown in this example:
componentsNotShown:[1 TO 9999]
Using a string ensures that the query returns traces that had clamped transactions.
Because the historical event viewer search uses Lucene syntax, these syntax rules apply to historical event queries:
- The word TO in the string is case-sensitive.
- The search syntax is lexicographical, not numerical. For this reason, performing historical queries usingcomponentNotShownas a query filter can return incorrect results.
- Strings beginning with*(asterisk) or?(question mark) are not allowed.
Viewing Errors with Transaction Tracer
When ErrorDetector is enabled, you can use the transaction tracer to identify and view errors.
About the Tree View in Transaction Tracer
View the transaction components in a hierarchical view of information. You can navigate to the component and can identify performance problems.
You can view components that are instrumented using PBDs and deep visibility components. Introscope automatically discovers and instruments deep visibility components without the use of PBDs.
Smart instrumentation is available only for Java agents, not .NET agents.
Follow these steps:
- In WebView, click Tools, Transaction Tracer.
- Select a transaction trace in the table.
- Click the Tree View tab in the lower pane.
- Expand a node in the tree.Each node in the tree displays the component, name, duration, and percentage of total transaction duration. The color of the circle icon indicates the duration:
- Red: Component duration > 25 percent of total duration
- Yellow: Component duration > 9 percent < 25 percent of total duration
- Green: Component duration <= 9 percent of total duration
In the graphic, you can follow the red circular indicators down the tree. You see the methods that are involved with most of the transaction time. For example, theAxisServer::invoke method took 95 percent of the 37 ms it took the transaction to run.Trace components that do not contribute a significant amount of time to the transaction are color-coded with a green icon. - Select a component to view the following information in the Component Details area:
- Component type, name, and path
- Duration, timestamp, and total transaction time
For correlated transaction components, the Summary View and Tree View tabs display only the scope of the first JVM. The Trace View tab displays the entire scope of related transaction components. Be aware of this limitation when switching from Trace View to the other tab views.
Aggregated Data for Multiple Transactions
In the transaction tracer, you can select multiple transactions to see aggregated data for all the components in the traces.
Follow these steps:
- Open a list of transactions by running a Transaction Trace.
- Select multiple transactions using CTRL-click or SHIFT-click.
- Open the Summary or Tree view to see the transaction data aggregated.
- Transaction Tracer shows the aggregated data in the table.You might need to scroll down to see all the data.
- The Tree View shows the aggregated data.In the Tree view, Transaction Tracer adds a node if the selected transactions do not share a common root node. The node is named Root.
More Information: