PurePaths tab

The table in the PurePaths tab of the PurePath dashlet displays the list of the recorded PurePaths. It is the basis for other components of this view, you need to select a PurePath in this table to view data in other tabs.

PurePath tab
PurePath tab

PurePath metrics

The table displays the following performance metrics.

  • Error State: The first, unlabeled column displays icons that indicate the state of the PurePath. See below for icons description.
  • PurePath: A string representing the PurePath identifier.
  • Response Time [ms]: The total execution time for the PurePath in milliseconds, excluding asynchronous paths that may take longer independently.
  • Exec Sum [ms]: The overall time spent executing any captured method within the PurePath.
  • Breakdown: The breakdown of percentage between CPU, Sync, Wait, and I/O times. A high I/O time doesn't necessarily mean that the application spends its time in I/O operations, because the I/O time also contains kernel time.
  • Size: The number of method calls within an PurePath. Only instrumented methods are included.
  • Agent: The name of the Agent from which this PurePath starts.
  • Application: The application to which the PurePath belongs. This is the first matched application, as defined in the System Profile.
  • Top Findings: The problem pattern category top findings for the PurePath. See Problem Pattern Detection for more information on Top Findings.
  • Start Time: The time when this PurePath started.
  • Transactions: The names of the Business Transactions applied to the PurePath.
  • Duration [ms]: The time from the first method until the last method completed, including asynchronous method calls that may finish after the first method completed.
  • CPU Sum [ms]: The overall required CPU time for executing this path. This value does not have to be equivalent to the total CPU time of the first method of this path if more than one thread is involved in the PurePath.
  • Sync Sum [ms]: The overall required sync time for executing this path. This value is equivalent to total sync time of the first method of this path if more than one thread is involved in the PurePath. Only instrumented methods for which synchronization time recording is enabled are measured.
  • Wait Sum [ms]: The overall required wait time (including waiting for other threads or I/O) for executing this path. This value is equivalent to the total wait time of the first method of this path if more than one thread is involved in the PurePath. Only instrumented methods for which synchronization time recording is enabled are measured.
  • Suspension Sum [ms]: The time the path was in suspension (typically garbage collector runs).
  • Agent ID: The numerical ID of the Agent instance from which this PurePath starts.
  • Tag ID: The continuous numerical ID of PurePaths recorded by the given Agent.
  • Thread Name: The name of the root path's thread.
  • End Time: The time with the PurePath ended.
  • Web Request Response Time [ms]: The processing time required to complete a web request, including (if applicable) Servlet 3 asynchronous processing time.
  • Client IP: The client IP address for web requests.

By default, not all metrics are included in the table. To select which columns to display, right-click a column head and select or clear the column check boxes as needed.

PurePath states

The icons in the first column of the PurePaths table indicate the state of the PurePath:

  •  Complete: The PurePath is completed. All expected events for this PurePath were received, and it is no longer waiting for new events.
  •  Asynchronous Complete: A PurePath on which asynchronous Servlet 3 processing took place is completed.
  •  Processing: The PurePath is currently being processed. Additional events describing this PurePath are expected. Data for PurePaths in this state is not used for other analysis dashlets than the PurePath dashlet.
  • Processing: The PurePath timed out while being processed.
  •  Waiting: A completed PurePath received all expected events but is still waiting for possible events created by asynchronously executed parts of the PurePath. (See Note 1, below.) If any Agent crashes, this state might remain until the Agent is removed from the AppMon Server by a timeout (default 30 seconds), because this Agent might have been called by existing PurePaths.
  •  Timeout: A PurePath did not receive all expected events within the timeout period. One of the following applies:
    • At least one method within the PurePath has not returned, and for the configured timeout (See Note 1, below) no new data has arrived for the PurePath. The transaction is probably stuck.
    • The PurePath is a long-running transaction that has not been finished within the Maximum PurePath Age timeout (See Note 2, below).
  •  Path Timed Out: The PurePath did not finish in time.
  •  Corrupted: A problem occurred while creating the PurePath. PurePaths marked as corrupted are not used for other analysis views than the PurePath view. Corrupted PurePaths are not analyzed at all: they do not provide any measurements or incidents. A PurePath can be corrupted when:
    • At least one event carrying data for this PurePath has been skipped. Check the PurePath details for the number of skipped events. Events are skipped when they are not read fast enough from the instrumented application where they were created. This can be caused by:
      • Slow network between the instrumented Application and the AppMon Collector
      • Slow network between the AppMon Collector and the AppMon Server
      • Too much instrumentation on one or more instrumented applications
    • The instrumented application was shut down while the PurePath was in the Processing state.
  •  Truncated Complete: The PurePath was truncated because the number of nodes exceeded the maximum allowed nodes. Either reduce the instrumentation to get shorter PurePaths or increase the number of maximum allowed nodes.
  •  Truncated Processing: The PurePath is still expecting events, but has already exceeded the maximum allowed nodes. Data received with incoming events is used to update existing nodes, but no new nodes are created.
  •  Truncated Waiting: The PurePath is waiting for new events from asynchronous calls, but has already exceeded the maximum allowed nodes. Data received with incoming events is used to update existing nodes, but no new nodes are created.
  •  Truncated Timeout: The PurePath timed out while waiting for expected events and has exceeded the maximum allowed nodes. Data received with incoming events is used to update existing nodes, but no new nodes are created.
  •  Incomplete: The PurePath was stored in a stored session while the PurePath was in the Processing or Waiting state. It cannot be guaranteed that the PurePath is completed. Incomplete PurePaths can only occur in stored sessions.
  •  Truncated Incomplete: A truncated PurePath was stored in a stored session while the PurePath was in the Processing or Waiting state. It cannot be guaranteed that the dumped PurePath is completed. Incomplete PurePaths can only occur in stored sessions.
  •  Error: The PurePath contains an error.
  • Path Corrupted: It is not possible to determine PurePath success because the PurePath is corrupted. Either an involved Agent may have been shut down before the PurePath completed, or a node may contain corrupted information.
  • Transaction Failed: The transaction failed. Review the details for more information.
  • Transaction Failed: The transaction failed because it timed out.

Notes

  1. PurePath completeness timeout: The completeness timeout defines the timeframe for PurePaths to be finalized when additional data might still come in. The default is 600 seconds (10 minutes); that is, the timeout is triggered 10 minutes after the last event came in on that PurePath. If you have constant events coming in, the PurePath continues until there is no event within the defined timeout period. The timeout can be configured to a maximum of 3600 seconds (1 hour). Check Agent connections and application logic before changing the timeout value: -Dcom.dynatrace.diagnostics.completenessTimeout=<valueInSeconds>.
  2. Maximum PurePath age: In very rare cases, it might be necessary to change the default PurePath timeout, for instance for an extremely long running job of SQL statements. In <DT_HOME>/dtserver.ini, add -Dcom.dynatrace.diagnostics.maximumPurePathAge=<valueInSeconds>
    Then restart the AppMon Server to implement the changes.
    Be aware that increasing this value can result in enormous PurePath node sizes, challenging the stability of the AppMon Server. However, if DB statement aggregation (currently available for JDBC and ADO.NET) is enabled, it may shrink the node size for parameterized queries, which reduces the load.


The icons give you a quick visual clue about a PurePath's state. To review details, either hover over the row or right-click the row and select Details from the context menu.

The following figure provides example details for a Path Corrupted () icon.

PurePath details
PurePath details

PurePaths context menu

Right-click the PurePaths tab to display a context menu that includes these options:

  • Drill Down: Select a dashlet from the cascading menu to display information for just that PurePath in the selected dashlet.
  • Show in Dashboard: Select a dashboard from the cascading menu to open it with filter, set for the selected PurePaths.
  • Add Snapshot to Dashboard: Displays the dashlet in the selected dashboard with the time frame automatically set to last 30 minutes.
  • Export: Opens the Export Session dialog box to export the selected PurePaths to a user-defined session file.
  • Store Session: Select this option to open the Store Session dialog box to save the selected PurePaths as a new session. The session is available in the Online Session tree. This option is only available for realtime sessions.
  • Result Limit: Select the maximum number of PurePaths for the session. The default is 10,000.
  • Select PurePath for comparison: To compare two PurePaths:
    1. Right-click the first PurePath and select Select PurePath for comparison.
    2. Right-click the second PurePath and select Compare with <PurePath>.
      The PurePath Comparison dashlet opens, with data from the two selected PurePaths.