Boomerang flavors

From Boomerang version 1.737.0 and onward we provide mPulse customers with an option to pick a specific Boomerang flavor based on the metrics and information they would like to collect. The motivation behind having different flavors is to deliver a version of Boomerang that is optimal in terms of transferred bytes to end-users. Delivering less bytes of Boomerang/JavaScript code means to end-users that Boomerang would be delivered faster, Boomerang code would need less device resources (CPU and memory) for parsing and evaluation and that more device resources (CPU, memory and network) would be free for processing other page assets as CSS, JavaScript, Images and etc.

There are 2 significant changes that are introduced with Boomerang Flavors:

  • Boomerang source code: Introducing 9 new sub-versions for Boomerangs with flavors.
  • mPulse app editor: Adding new UI elements to the mPulse App Editor that allow mPulse customers to pick easily a flavor of their choice or allow the App Editor to automatically pick an optimal flavor.

Boomerang source code

In each Boomerang version that has flavors we have 9 flavors that in case of Boomerang 1.737 are 1.737.0, 1.737.10, 1.737.20, 1.737.30, 1.737.40, 1.737.50, 1.737.60, 1.737.70, 1.737.80 (Reference: Flavors table) . A flavor in this case is a subset of Boomerang plugins that are bundled together (Reference: Plugins in flavors table).

Flavors table

Flavor

Name

File Size (brotli)

Description

1.***.0

full

49 KB

The complete collection of Boomerang plugins allowing for the widest range of data collection features.

1.***.10

minimal

25 KB

Smallest bundle containing only the minimally required plugins to send a beacon.

1.***.20

default

29 KB

Standard web performance metrics. Excluding advanced features such as JavaScript error collection, Perceived Performance Metrics and and SPA monitoring.

1.***.30

default-errors

33 KB

Standard web performance metrics including JavaScript error collection. Excluding advanced features such as Perceived Performance Metrics and SPA monitoring.

1.***.40

default-spa

35 KB

Standard web performance metrics including support SPA performance monitoring. Excluding advanced features such as JavaScript error collection and Perceived Performance Metrics.

1.***.50

default-spa-errors

39 KB

Standard web performance metrics including SPA monitoring support and JavaScript error collection. Excluding advanced features such as Perceived Performance Metrics.

1.***.60

cutting-edge

34 KB

Standard web performance metrics including Perceived Performance Metrics support. Excluding advanced features such as JavaScript error collection and SPA monitoring.

1.***.70

cutting-edge-errors

38 KB

Standard web performance metrics including Perceived Performance Metrics and JavaScript error collection. Excluding advanced features such as SPA monitoring.

1.***.80

cutting-edge-spa

40 KB

Standard web performance metrics including Perceived Performance Metrics and SPA monitoring. Excluding advanced features such as JavaScript error collection.

Plugins in flavors table

Plugin

Description

*.0

*.10

*.20

*.30

*.40

*.50

*.60

*.70

*.80

rt

Standard web performance metrics

โœ“

โœ“

โœ“

โœ“

โœ“

โœ“

โœ“

โœ“

โœ“

page-params

Page Groups, custom timers, dimensions and metrics

โœ“

โœ“

โœ“

โœ“

โœ“

โœ“

โœ“

โœ“

โœ“

config-override

Configuration Overrides

โœ“

โœ“

โœ“

โœ“

โœ“

โœ“

โœ“

โœ“

โœ“

navtiming

Navigation Timing API monitoring

โœ“

โœ“

โœ“

โœ“

โœ“

โœ“

โœ“

โœ“

โœ“

eventtiming

Event Timing API monitoring

โœ“

โœ“

โœ“

โœ“

โœ“

โœ“

โœ“

โœ“

โœ“

painttiming

Paint Timing and LCP monitoring

โœ“

โœ“

โœ“

โœ“

โœ“

โœ“

โœ“

โœ“

โœ“

akamai

Akamai plugin

โœ“

โœ“

โœ“

โœ“

โœ“

โœ“

โœ“

โœ“

โœ“

mq

Method queue

โœ“

โœ“

โœ“

โœ“

โœ“

โœ“

โœ“

โœ“

โœ“

mobile

Network Information API monitoring

โœ“

โœ“

โœ“

โœ“

โœ“

โœ“

โœ“

โœ“

โœ“

memory

Browser and page metrics

โœ“

โœ“

โœ“

โœ“

โœ“

โœ“

โœ“

โœ“

โœ“

resttiming

Resource Timing API monitoring

โœ“

โœ—

โœ“

โœ“

โœ“

โœ“

โœ“

โœ“

โœ“

compression

Compression utility lib

โœ“

โœ—

โœ“

โœ“

โœ“

โœ“

โœ“

โœ“

โœ“

cross-domain

Session tracking across several domains

โœ“

โœ—

โœ—

โœ—

โœ—

โœ—

โœ—

โœ—

โœ—

bw

Bandwidth test

โœ“

โœ—

โœ—

โœ—

โœ—

โœ—

โœ—

โœ—

โœ—

iframe-delay

Iframe delay plugin

โœ“

โœ—

โœ—

โœ—

โœ—

โœ—

โœ—

โœ—

โœ—

early

Early Beacon

โœ“

โœ—

โœ—

โœ—

โœ—

โœ—

โœ—

โœ—

โœ—

usertiming

User Timing API monitoring

โœ“

โœ—

โœ—

โœ—

โœ—

โœ—

โœ—

โœ—

โœ—

third-party-analytics

Third party analytics

โœ“

โœ—

โœ—

โœ—

โœ—

โœ—

โœ—

โœ—

โœ—

cache-reload

Reload Boomerang

โœ“

โœ—

โœ—

โœ—

โœ—

โœ—

โœ—

โœ—

โœ—

errors

JavaScript error collections

โœ“

โœ—

โœ—

โœ“

โœ—

โœ“

โœ—

โœ“

โœ—

auto-xhr

XHR and Fetch API monitoring

โœ“

โœ—

โœ—

โœ—

โœ“

โœ“

โœ—

โœ—

โœ“

spa

SPA monitoring

โœ“

โœ—

โœ—

โœ—

โœ“

โœ“

โœ—

โœ—

โœ“

history

History API helper for SPA plugin

โœ“

โœ—

โœ—

โœ—

โœ“

โœ“

โœ—

โœ—

โœ“

continuity

Perceived Performance Metrics

โœ“

โœ—

โœ—

โœ—

โœ—

โœ—

โœ“

โœ“

โœ“

*.0

*.10

*.20

*.30

*.40

*.50

*.60

*.70

*.80

Boomerang flavors in mPulse app editor

Flavor override mode

Not all Boomerang plugins can be configured from the App Editor. For example the iframe-delay plugin exists only in the 1.***.0 / full Boomerang flavor and canโ€™t be activated from the App Editor. In such case the auto-select mode may choose a flavor that is not 1.***.0 / full but the Override mode will allow us to choose the 1.***.0 / full Boomerang flavor.

Flavor auto-select mode

In the following example โ€œCollect JavaScript Errorsโ€ is selected and โ€œCollect Perceived Performance Metricsโ€ is not selected. This means that the Errors plugin is required but the Continuity plugin is not required. The optimal flavor in this case is 1.***.30 / default-errors which is 33 KB with brotli compression.

The App Editor will automatically pick 1.***.30 / default-errors if the Override checkbox is not ticked.