This topic explains the meanings of key statistical metrics on each page in application monitoring of Application Real-Time Monitoring Service (ARMS).

Satisfaction

Application Performance Index (APDEX) is an internationally accepted standard for evaluating application performance. According to APDEX, user experience of an application can be divided into three levels:

  • - Satisfied (0 to T)
  • - Tolerating (T to 4T)
  • - Frustrated (greater than 4T)

The following formula is used to calculate the APDEX score:

APDEX score = (Satisfied samples + Tolerating samples/2)/Total samples

Image source: apdex.org

For ARMS, First Paint Time (FPT) is taken into account. The default value of T is 2s.

JS stability

In ARMS, JS stability refers to the JS error rate of pages.

If any JS error occurs in a page view (PV) cycle, this PV cycle is an error sample.

Error rate = Error samples/Total samples

In addition to automatically reported JS errors, page exceptions include errors reported by manually calling methods in Methods user guide.

Page speed

In ARMS, the page speed indicates the FPT of a page.

When performance or speed statistics are collected, all data is collected by the Navigation Timing API defined by the World Wide Web Consortium (W3C).

Image source: www.w3.org

Field description
Table 1. Time consumed in each phase
Reported field Description Formula Remarks
dns The time consumed for DNS resolution. domainLookupEnd - domainLookupStart None
tcp The time consumed for TCP connection. connectEnd - connectStart None
ssl The time consumed for SSL connection. connectEnd - secureConnectionStart This field is valid only when HTTPS is used.
ttfb The time to first byte (TTFB), indicating the time consumed for a network request. responseStart - requestStart TTFB can be calculated in multiple ways. For TTFB calculation in ARMS, see Google development definition.
trans The time consumed for data transmission. responseEnd - responseStart None
dom The time consumed for document object model (DOM) resolution. domInteractive - responseEnd None
res The time consumed for resource loading. loadEventStart - domContentLoadedEventEnd This field indicates the time consumed for synchronously loading resources on the page.
Table 2. Key performance metrics
Reported field Description Formula Remarks
firstbyte The time used for generating the first response packet. responseStart - domainLookupStart None
fpt The FPT. responseEnd - fetchStart This field indicates the duration from the time when a request is initiated to the time when the browser starts to parse the bytes of the first batch of HTML documents.
tti The Time to Interact (TTI). domInteractive - fetchStart After the browser resolves all HTML documents and constructs the DOM, the browser starts to load resources.
ready The time used for HTML loading, or the time when the DOM is ready. domContentLoadEventEnd - fetchStart If a JavaScript (JS) script is executed synchronously on the page, the execution time of the JS script is equal to ready minus tti.
load The time for completely loading the page. loadEventStart - fetchStart load = fpt + dom + (ready - tti) + res

API call success rate

API call success rate = Successful API calling samples/Total samples

In addition to the automatically reported AJAX requests, samples for API call success rate statistics also include the data reported by manually calling methods in Methods user guide.