In order for Noibu to detect ROI impacting errors, we need to capture corresponding page and error information during all your user web sessions. In addition to raw information, we also need to record the user's session in order to allow you to watch what happened while your users encountered errors.
Noibu stores and analyzes information about errors on separate servers, which means that the script deployed is only tasked with sending the information back to those servers. In a case where our backend services were to shutdown, the Noibu script will not be aware of those failures and will not impact your customers.
We send this information to our servers in using two different techniques.
- POST requests
We send page and error information via POST requests. We only communicate with this endpoint when we detect that users might be leaving the page:
- When user change tabs
- When users close the browser
- When users change pages
We send session recording activity via a web-socket in order to not hinder site performance. A web-socket is a stream of information and once opened it has to be explicitly closed, unlike traditional requests that close themselves as soon as a response is received from the server. We keep our socket alive for the entire user journey in order to transmit all the session recording information. For that reason you will see that this request is Pending for the entirety of the user session.