How does PurePath help me understand my application's services?

With PurePath technology, you get complete diagnostics, such as timing data and code level context, across the entire user clickpath spanning device, operating system, page actions, methods, and code. This enables more accurate reporting and fast root-cause resolution.

PurePaths can be accessed in a variety of ways in conjunction with other advanced analytics features, including Service flow, service backtraces, response time distribution, and more.

Where can I find PurePaths?

To view individual PurePaths for a service

  1. Select Services & transactions in the navigation menu.
  2. Select the service you want to analyze.
  3. On the Service page, open the Browse (…) menu and select View PurePaths.
  4. Select a PurePath from the list. For details on what is included in PurePaths, please see the next section.

Alternatively, you can access PurePaths for specific types of requests. Just open the Browse (…) menu and select View PurePaths.

Filtering and searching PurePaths

The PurePaths page includes a list of PurePaths that you can browse, sort, filter, and analyze. It always shows the last ~100 PurePath in the given time frame that match your filter. You can filter the PurePaths by Response time, CPU time, HTTP Response code, HTTP Method, service instance, and more. You can also use the quick filter text box to search for specific requests that have been processed by the selected service.

You can then analyze a selected PurePath by clicking View response time hotspots, View service flow, or View backtrace. See the example below.

As you can see, PurePath technology demonstrates the full power of Dynatrace by enabling you to understand and analyze individual transactions end-to-end.

Finding a problematic PurePath

Because sifting through thousands of PurePaths is often impractical, we’ve also made PurePaths accessible in some other valuable ways. For example, let’s assume you’re looking for outliers. The best way to find outliers is by using response time distribution analysis. From here you can drill down into a specific response-time range. You can then either review the PurePaths of the requests within that response time range or you can take things one step further by looking at the Service flow for those requests.

From here, select the Service flow branch that you’re interested in. In the example below, say you’re interested in the Customer Frontend service requests that call the JourneyService service and ultimately the database. Now click the View PurePaths button to see something amazing…

Dynatrace returns a list of all the easyTravel Customer Frontend service transactions that send trigger to the JourneyService calls that in turn call the database. Additionally those same easyTravel Customer Frontend requests have response times within the selected Response time range! In this example, you can see that all requests that meet the selected criteria come from orange.jsf service calls.

From here you can easily compare the Response time, CPU time, HTTP Response code, HTTP Method, and service instances of each of the relevant PurePaths.

Or, expand an individual PurePath and dig deeper by clicking View response time hotspots, View service flow, or View backtrace. For example, Response time analysis view provides insights into code execution, service calls, database statements, and much more (see example below) .

In this way, Dynatrace PurePath technology makes it easy to find and understand outlier service requests. And this functionality is available throughout Dynatrace!

Have a look at the outlier example below. It shows that 54% of the requests executed by the BookingService service call the Credit card verification service. This contributes 578ms to the overall response time. By clicking the View PurePaths button here we can analyze the specific requests that do this.

While PurePaths are already accessible from all Service pages, this is just the beginning! In the coming weeks, we’ll integrate more PurePath power and functionality, enabling you to dig deeply into the analysis of every single transaction in your environment!