Page Overrides

Boomerang may override (wrap) native DOM functions for monitoring purposes, depending on the plugins and features that are enabled.

Generally, Boomerang wraps these functions to add a small amount of custom instrumentation, prior to executing the original function.

The following is a list of known DOM overrides:

Method Plugin Option Purpose
XMLHttpRequest constructor BOOMR.plugins.AutoXHR instrument_xhr Monitor timing for XHRs (individual and during SPA navigations)
fetch BOOMR.plugins.AutoXHR AutoXHR.monitorFetch Monitor timing for fetches (individual and during SPA navigations)
window.onerror BOOMR.plugins.Errors Errors.monitorGlobal Monitor global exceptions
console.error BOOMR.plugins.Errors Errors.monitorConsole Monitor app-generated error messages
addEventListener BOOMR.plugins.Errors Errors.monitorEvents Wrapped so messages from cross-origin frames have a full stack
removeEventListener BOOMR.plugins.Errors Errors.monitorEvents Wrapped so messages from cross-origin frames have a full stack
setTimeout BOOMR.plugins.Errors Errors.monitorTimeout Wrapped so messages from cross-origin frames have a full stack
setInterval BOOMR.plugins.Errors Errors.monitorTimeout Wrapped so messages from cross-origin frames have a full stack
history.back BOOMR.plugins.History When BOOMR.plugins.History is enabled SPA Soft Navigation monitoring
history.forward BOOMR.plugins.History When BOOMR.plugins.History is enabled SPA Soft Navigation monitoring
history.pushState BOOMR.plugins.History When BOOMR.plugins.History is enabled SPA Soft Navigation monitoring
history.replaceState BOOMR.plugins.History When BOOMR.plugins.History is enabled SPA Soft Navigation monitoring
history.go BOOMR.plugins.History When BOOMR.plugins.History is enabled SPA Soft Navigation monitoring