What are Browser Root Causes

Along with JVM Root Causes Plumbr now exposes Browser Root Causes which happened during the communication of user’s browser with backend systems showing availability or performance issues. Most common of them are: Browser Request Failures, Browser Request Waits, DNS lookups, etc.

The availability issues are exposed by Plumbr as Browser – Request Failure meaning that particular HTTP request was failed to execute.

To better understand performance issues background we need to look at an illustration of a standard HTTP call here:

Source: W3 Resource Timing specification

Based on this illustration Plumbr is bringing the following Browser Root Causes reflecting the HTTP call phases shown on the picture:

  • Browser – Redirect – there were a lot of redirects or some of the redirects were slow
  • Browser – Cache Fetch – resources requested by browser were already cached in the disk, but taking this resource from the disk was slow
  • Browser – DNS lookup – performing DNS lookup was slow
  • Browser – TCP connect – establishing connection to the backend server was slow
  • Browser – SSL handshake – establishing secure connection to the backend server was slow
  • Browser – Request Wait (Assets, XHR, Pageload) – asset (CSS, JS, etc.), XHR or page HTML request from the backend server was slow
  • Browser – Download (Assets, XHR, Pageload) – asset, XHR or page HTML download from the backend server was slow
  • Browser – HTTP Call (Assets, XHR, Pageload) – http request for asset, XHR or page HTML from the backend server was slow, but Plumbr wasn’t able to distinguish the phase where it was slow
  • Browser – Queue Wait – if there are lots of images/resources to be fetched for particular page from the same domain, then browser can place requests requesting stuff from same domain into waiting queue.