Performance: APM+ Overview

Retrace’s APM+ is a powerful feature and serves as a core part of our Application Monitoring service. The feature implements byte code inspection of apps, giving you method-level telemetry on code at run time. Use this tool to get instant insight on:

  • Start time / end time and HTTP status codes
  • HttpHandlers and HttpModules utilized in the IIS pipeline
  • Call Stack of key methods / pipeline execution steps, i.e. controller execution, viewing compilation, and viewing rendering
  • MS SQL database calls, including the query text
  • Web service calls, including the requested URL
  • Redis cache calls
  • Request Queuing & Blocked – Estimations in delays of processing the request. Queuing being time before the request is started and blocked is time it was delayed after it was started.
  • Call Stack and timings of other methods that are “opted in” for profiling. (To see how to add custom methods to be profiled, click here)

Once the Retrace profiler has been configured and enabled, the Retrace Agent will be able to facilitate data collection and push that data to your account. To view APM+ data, go to the Monitoring Tab>Web Apps and open the App Dashboard for an app that has profiling enabled. Once in the App Dashboard, click on the Performance (APM+) tab.

Using the APM+ Tab in the App Dashboard

When you click on the the Performance (APM+) in an App Dashboard, you will be able to view a breakdown of your average page load times by components that make up your app. Quickly see if database queries, caching, queuing or other parts of your stack are causing app slowness.

You can also click on “User Satisfaction” to view a chart of Fast, Sluggish, Slow, and Failed requests based on the goal you set for response times.

Overview Tab

The Overview tab will give you a quick look into the top 5 Requested Actions, the top 5 Queries, and the top 5 external web services, all sorted by the percentage of time it accounted for. To the right of each “Top 5” table is a chart to visualize the top web requests, top queries, and top external services.You can also click on any requested action or SQL query link in the tables to see a more detailed performance view for that requested action or query.

There are a number of different views you can select to help you investigate app performance issues. These different views include By Request, SQL Queries, Web Services, and Servers.

By Request

The By Request tab shows all captured requests from the application that can be sorted by a variety of fields. Here you can click into each request and see any traces as well as Sat scores around the request. For details take a look at Performance: APM+ Requests

SQL Queries

The SQL Queries tab shows all SQL queries that have been found inside the request traces and can be sorted by a variety of fields. You can click into these queries to view more detailed information about it’s performance and the originating requests.

Web Services

The Web Services tab displays any external web calls and is sortable by a variety of fields. You can also click into these request to view more details about the request.

Tracked Functions

Tracked Functions are an advanced feature of Retrace and have to be manually set up in your application code. Once they are configured to your app the functions specified will show here. To learn more about Tracked Functions view Performance: Tracked Functions

Servers

The Servers tab lists the servers that are currently running the app as well as metrics around the requests directed to that server. You can click the server name to go to the Server Dashboard.

Traces

The Traces tab shows all gathered traces and is sortable by a variety of fields. You can either click the Request name to view details on the trace or click the server name to go to the Server Dashboard.