Performance
When the TrackJS agent is installed into your web application, there are negligible performance impacts to page load time, function execution time, and error transmission.
Page Load Time
Page load time is affected by the agent being downloaded by the browser. If you include the agent as a script tag from our CDN, the impact should be limited to the ~8kb of the script. You can reduce this impact by bundling the agent into your existing scripts.
Shortly after document load, there is an additional non-blocking request made to usage.trackjs.com
, which records page views.
Function Execution Time
The agent adds a shallow function wrapper around some base-level browser APIs, such as console, addEventListener, and setTimeout, to allow us to store logs of Telemetry actions. No processing of data takes place and the overhead should not be noticed.
Error Transmission
When an error is detected, the Agent will gather all the Telemetry logs and do some discovery about the page. This gathering may take up to ~10ms of execution time, depending on performance of the client device.
Once gathered, the error report will be sent to the TrackJS API for processing. This action is non-blocking, but may take upwards of 100ms to complete depending on the performance of the current network.