Service backtrace

More than just knowing which service directly calls one of your services, it's helpful to know the sequence of service calls that leads up to each request—all the way back up to the browser click that triggered the sequence of calls. Dynatrace Service-level backtrace can show you such call sequences.

Say for example that you’re analyzing a SQL database service and you want to understand the sequence of preceding service requests that ultimately triggered the incoming requests to the SQL service. With service-level backtrace you might learn that, for example, the SQL database service is called by Service1, while Service1 is called by Service2, which in turn was triggered by a click on a login button.

To view service-level backtrace

  1. Go to Services.
  2. Select the service you want analyze.
  3. On the service overview page, in the Understand dependencies section, select Analyze backtrace to view the service-level backtrace of requests to this service.

Notice in this example that the majority of calls come from a web application, easyTravel, and that the calls come via a specific chain of services (EasyTravelWebServer calls easyTravel Customer Frontend that calls CouchDB_ET). Select any element of the chain to see the names of individual requests. In the image below, all requests to CouchDB_ET originating from the easytravel.com application come from a detailed list of user actions.

User actions in service-level backtrace

When a service or an application in a backtrace hierarchy is selected, you can access further analysis regarding this service or application in two separate sections.

Service-level backtrace

In the first section, in the case of an application, you can view the list of user actions of this specific application that occurred within the selected timeframe. In the case of services, you can view the types of requests that were made by that particular service to the next service in the backtrace flow.

The next section includes analysis data regarding the number of requests and any failures that may have occurred. Further information can be accessed by selecting the tabs:

Additionally, you have the option of showing only those transactions that contain the current call chain. Just select Filter service backtrace.

Filter service-level backtrace chain

If a clustered service is selected in the backtrace, open the Instances tab to view the same analysis for every service instances (see image above).

Backtrace analysis examples

Here are some examples of how to use backtrace analysis:

The backtrace feature becomes even more useful when it comes to analyzing errors. See the example below. It shows a 100% Failure rate for the AdsForBlog request.

Backtrace 6

To learn the root causes of detected failures, select Analyze failure rate degradation. You'll then see the message and the stacktrace (see image below). To see how significant the failures were and if they impacted your users, select Analyze backtrace.

Backtrace 7

Dynatrace shows you how this failed request impacted your other services and your users. You can see that all requests came from a single user action, the loading of the blog. You can also see that the /blog request on the web server wasn’t impacted by the failed Ads request. Not a single /blogs request failed—so the error was handled gracefully.

Backtrace 8

Backtrace 9

In contrast, have a look at the service analysis page below. You can see immediately that the failure of the Credit Card Verification service had some impact on users. The BookingService requests failed and users could no longer purchase items. This shows clearly that this error is of high importance and should be addressed immediately to avoid future occurrences.

Backtrace 10

Backtrace 12

Dynatrace enables you to see which services call which third-party services, in addition to the browser clicks that initiate such call sequences. In the image below, note that all requests to fedex.com are failing. The service backtrace tells you which services and which user clicks led up to this third-party call.

Backtrace 13

Backtrace 14