NAV

What’s in an mPulse Web App Beacon?

mPulse is built above the boomerang JavaScript library that collects web performance data from a user’s web browser and sends that back to the mPulse servers on a beacon. The simple definition of a beacon is that it is an HTTP(S) request with a ton of data included either as HTTP headers or as part of the Request’s Query String. Within the web performance community, this data is commonly called RUM or Real User Measurement data because it involves measuring the experience of real users. In this document, we will describe the various parameters we collect via the boomerang beacon as well as how they are mapped onto the raw datastore on S3 and the DSWB analysis tool in RedShift.

Top Level Fields

Top level fields Query String Param S3 RedShift Example Description
domain h.d domain domain Registered domain or registered dev domain in mPulse of the page sending the beacon.
timestamp timestamp timestamp Server timestamp when beacon arrived.
IP IP Address remote_ip remote_ip IP Address of the end user or any proxy they might be using.
API Key h.key key key mPulse API Key assigned to this domain.
HTTP Method http_method http_method GET/POST HTTP Request method used to send the beacon. This may not be useful for analysis. (For internal use only)
HTTP Version http_version http_version 1.1, 1.0, 2.0 HTTP Version used when sending the beacon. This may not be very useful for analysis. (For internal use only)
Beacon Referrer http_referrer http_referrer <url> URL of the page that sent the beacon. This may be blank depending on browser privacy settings.
Proxy proxy_address proxy_address IP address of the CDN provider that handled the edge connection for this beacon. This may not be very useful for analysis. (For internal use only)
Beacon Type rt.start beacon_type beacon_type page view, angular Specifies whether this beacon was for a full page view, an XHR call, an Angular.js call, etc.
Page Group h.pg page_group page_group Home, Orders, PDP Page Group for the page the beacon relates to. Page groups are defined in the mPulse App Config dialog.
A/B Test name h.ab ab_test ab_test If the site uses A/B Testing, this variable specifies the test bucket the user was in when they sent the beacon.
Site/App Version h.v site_version site_version 1.0, 2.5b For mobile apps, this is the version of the app installed on the user’s device. For websites, site owners may use this to specify a release number for their site.
Filtered URL url url URL of page the beacon relates to after passing through all defined URL filters. If no filters are provided, this is the top level URL of the site.
Warnings warnings warnings Warnings added by the collector when parsing this beacon.
SPDY nt_spdy spdy spdy Set to true if the page was served using SPDY.
SSL ssl ssl Set to true if the page was served using SSL.
IPv6 ipv6 ipv6 Set to true if the beacon was sent using IPv6. This may not be very useful for analytics. (For internal user only)

Session

Session Query String Param S3 RedShift Example The following fields are all subfields of the session structure in the S3 JSON
Session ID rt.si ID session_id 90d7eab1-f0b2-46fc-acbc-6f19bb583d29-nr6gdf Session ID generated by mPulse and stored in a cookie by Boomerang. The first five chunks are a UUID, while the last chunk is the base36 representation of the session start time (see below) based on the user’s browser’s clock.
Session Start Time rt.ss start session_start Session start time represented as milliseconds since the epoch based on the user’s browser’s clock. This clock may not be in sync with the server clock, so only compare it with other browser timestamps.
Session Latest Time rt.end latest session_latest The timestamp of the current beacon based on the user’s browser’s clock. It is not the timestamp of the latest beacon in the session. To find out actual session duration, look at MAX(latest)-MIN(start) across all beacons grouped by session ID
Session Length in Pages rt.sl pages session_pages The number of pages the user viewed in this session up to and including the current page, but not including any pages viewed after this page in the same session. To find out actual session length in pages, look at MAX(pages) across all beacons grouped by session ID. If MAX(pages) == 1, then the session is considered a bounce.
Uncounted pages rt.obo oboPages session_obopages The number of pages in the session for which we were unable to calculate a load time. We need this to get a closer estimate of the actual average load time of all pages in the session.
Total Load Time rt.tt totalLoadTime session_totalloadtime The sum of load times of all pages within the session where we calculated load time. The average load time of a session is MAX(totalLoadTime)/(MAX(pages)-MAX(oboPages)).
Unload flag rt.quit isUnload session_isunload (presence indicates true, absense indicates false) This field specifies if the beacon was part of the unload event of the page or not. Unload beacons give us a better idea of how long a session actually lasted.

User Agent Fields

This data comes from the UserAgent HTTP Request Header, there are no query string parameters.

User Agent Fields S3 RedShift Example The following fields are all subfields of the user_agent structure in the S3 JSON
Browser Family family user_agent_family Chrome, Firefox, IE, Safari The browser family extracted from the user agent header.
Major version major user_agent_major 42, 13, 11, etc. The browser major version.
Minor version minor user_agent_minor 0, 5, etc. The browser minor version.
OS Name os user_agent_os Windows The Operating System name for the user.
OS Version osversion user_agent_osversion 8.1 The Operating System version for the user.
Model model user_agent_model Device model for mobile devices.
Manufacturer manufacturer user_agent_manufacturer Device manufacturer for mobile devices.
Device Type type user_agent_device_type Desktop, Mobile Device type (if known)
Mobile ISP isp user_agent_isp AT&T, Verizon For mobile apps, this is the mobile service provider if the page was requested over a mobile data connection. In all other cases, this field is empty.
Mobile Flag mobile user_agent_mobile 1 or 0 For mobile apps, this will be 1. For everything else, this field will be 0.
Raw User Agent String raw user_agent_raw The raw user agent HTTP header.

Geo Information

This data comes from doing a MaxMind GeoIP lookup on the source IP address encoded in the network connection between the browser and our server via TCP/IP. There are no query string parameters.

Geo Information from MaxMind GeoIP lookup S3 RedShift Example The following fields are all subfields of the geo structure in the S3 JSON
Country cc geo_cc The user’s country (L1 geo info).
Region/State/Territory rg geo_rg The user’s region, state, province, or territory (L2 geo info).
City city geo_city The user’s city (L4 geo info).
Postal Code postalcode geo_postalcode The user’s postal/zip code.
Latitude lat geo_lat The user’s approximate latitude.
Longitude lon geo_lon The user’s approximate longitude.
Organization org geo_org The user’s organization, if connected over a corporate/university network.
ISP isp geo_isp The user’s ISP.
Network speed netspeed geo_netspeed Cellular, Ethernet, Cable, etc. The advertised network grade of the user’s internet connection.

Bandwidth

Query String Param S3 RedShift Example The following fields are all subfields of the bandwidth structure in the S3 JSON
bw kbps bandwidth_kbps Bandwidth in kbps as measured by the bandwidth test.
bw_err error_pc bandwidth_error_pc Error in measuring the bandwidth based on standard deviation.
block bandwidth_block 1, 2, 3, 4, 5, 6 Bandwidth block (calculated by the server)
Also see Bandwidth & Latency details in the Other Parameters section below.

Timers

Timers Query String Param S3 RedShift Example The following fields are all subfields of the timers structure in the S3 JSON
Base Timers The following fields are sent on the beacon as-is
Response Time t_resp t_resp timers_t_resp Time from navigation start to first byte.
In-Page Time t_page t_page timers_t_page Time from first byte to onload (or whenever the page is considered ready).
Load time t_done t_done timers_t_done Time from navigation start to onload (or whenever the page is considered ready).
DOM Loaded t_domloaded t_domloaded timers_t_domloaded Time from navigation start to when the DOMContentLoaded event fired.
Config.js first byte t_configfb t_configfb timers_t_configfb Time from config.js request to config.js first byte.
Config.js load time t_configjs t_configjs timers_t_configjs Time from config.js request to config.js load complete.
Other Timers The following are sent on the beacon as part of t_other
Boomerang loader boomr_ld boomr_ld timers_boomr_ld Time from navigation start to when the Boomerang loader initiates Boomerang download.
Boomerang first byte boomr_fb boomr_fb timers_boomr_fb Time from navigation start to first byte of Boomerang.
Boomerang latency boomr_lat boomr_lat timers_boomr_lat Time from Boomerang request to Boomerang first byte.
Boomerang download time boomerang boomerang timers_boomerang Time from first byte of Boomerang until Boomerang completes initialization.

Prerender States

These are only supported on Chrome at this time. See Chromium Prerender docs & Prerendering in Chrome

Prerender states Query String Param S3 RedShift Description
Prerender complete t_load t_load timers_t_load Time from navigation start to onload, if the page was in a pre-rendered state when onload fired.
Total prerender t_prerender t_prerender timers_t_prerender Time from navigation start to page becoming visible, if it went through a pre-rendered state first.
Post render t_postrender t_postrender timers_t_postrender Time from onload in a pre-rendered state to page becoming visible.

Added by Server (No Query String Parameters)

S3 RedShift Example The following timers are not on the beacon, but are calculated by the collector
navSt_to_boomr timers_navSt_to_boomr Time from navigation start to when the Boomerang loader initiates Boomerang download.
fb_to_boomr timers_fb_to_boomr Time from the first byte of the page to Boomerang’s request initiation. This is used by FirstByteEstimator for beacons without a valid load time.
boomr_to_end timers_boomr_to_end Time from Boomerang’s request initiation to page load. This is used by FirstByteEstimator for beacons without a valid load time.
before_dns timers_before_dns nt_dns_st - nt_nav_st from navigation timing
dns timers_dns nt_dns_end - nt_dns_st from navigation timing
tcp timers_tcp nt_con_end - nt_con_st from navigation timing
ssl timers_ssl nt_con_end - nt_ssl_st from navigation timing
domLoad timers_domLoad nt_domloading - nt_nav_st from navigation timing
domReady timers_domReady nt_domcomp - nt_nav_st from navigation timing
renderStart timers_renderStart nt_firstpaint - nt_nav_st from navigation timing
loaded timers_loaded nt_load_end - nt_nav_st from navigation timing

Custom Timers

Query String Param S3 RedShift Example Description
custom0 - 9 custom0 - custom9 timers_custom[0-9] Custom Timers are configured via the mPulse App config dialog and may be based on a JavaScript variable, Navigation Timing, Resource Timing or User Timing. On the beacon, these are part of t_other

User Defined Timers

You may also add your own timers by calling BOOMR.plugins.RT.setTimer from JavaScript. Note that we have no control over these timers. Every custom timer also contains a corresponding _st (eg: custom0_st) that specifies the timestamp when the timer started. This is used to render it on a waterfall.

Custom Metrics

Query String Param S3 RedShift Example The following fields are all subfields of the custom_metrics structure in the S3 JSON
cmet.Metric0_Name 0 custom_metrics_0 Custom metrics are defined in the mPulse App config dialog.
cmet.Metric1_Name 1 custom_metrics_1 On the beacon, these metrics have the prefix cmet, followed by a sanitized version of the metric name.
In the S3 logs, these metrics are all numerically indexed.
cmet.Metric9_Name 9 custom_metrics_9 Metric values are always numeric. Currency values are always in the lowest unit (eg, ¢ rather than $). If a decimal place is included, then the value is multiplied by 100 to get the actual currency value.

Custom Dimensions

Query String Param S3 RedShift Example The following fields are all subfields of the custom_dimensions structure in the S3 JSON
cdim.Dimension0_Name 0 json_extract_array_element_text(cdim, 0) { <Dimension0_Name>: <Dimension0_value>, alias: <Dimension0_Value_Alias> } Custom dimensions are defined in the mPulse App config dialog
cdim.Dimension1_Name 1 json_extract_array_element_text(cdim, 1) On the beacon, these dimensions have the prefix cdim, followed by a sanitized version of the dimension name.
In the S3 logs, these dimensions are all numerically indexed.
cdim.Dimension9_Name 9 json_extract_array_element_text(cdim, 9) Dimension values may be Numeric, String or Boolean.

Third Party Analytics (Big Beacon Data)

Data Collection from Third Party Analytics

Google Analytics

Query String Param S3 Redshift Example Description
tp.ga.clientid - ga_clientid (v91), tp_ga_clientid (v92 and above) - clientID (unique id per visitor)
tp.ga.utm_source - ga_utm_source (v91), tp_ga_utm_source (v92 and above) - Campaign source
tp.ga.utm_medium - ga_utm_medium (v91), tp_ga_utm_medium (v92 and above) - Campaign medium
tp.ga.utm_term - ga_utm_term (v91), tp_ga_utm_term (v92 and above) - Campaign term
tp.ga.utm_content - ga_utm_content (v91), tp_ga_utm_content (v92 and above) - Campaign content
tp.ga.utm_campaign - ga_utm_campaign (v91), tp_ga_utm_campaign (v92 and above) - Campaign ID

Adobe Analytics

Query String Param S3 Redshift Example Description
tp.aa.aid - aa_aid (v91), tp_aa_aid (v92 and above) - Analytics ID (AID)
tp.aa.mid - aa_mid (v91), tp_aa_mid (v92 and above) - Marketing ID (MID)
tp.aa.campaign - aa_campaign (v91), tp_aa_campaign (v92 and above) - Campaign ID

IBM Digital Analytics

Query String Param S3 Redshift Example Description
tp.ia.coreid - ia_coreid (v91), tp_ia_coreid (v92 and above) - Core ID (unique id per visitor)
tp.ia.mmc_vendor - ia_mmc_vendor (v91), tp_ia_mmc_vendor (v92 and above) - Campaign vendor
tp.ia.mmc_category - ia_mmc_category (v91), tp_ia_mmc_category (v92 and above) - Campaign category
tp.ia.mmc_placement - ia_mmc_placement (v91), tp_ia_mmc_placement (v92 and above) - Campaign placement
tp.ia.mmc_item - ia_mmc_item (v91), tp_ia_mmc_item (v92 and above) - Campaign item
tp.ia.sp_type (as of Boomerang 1.389) - tp_ia_sp_type (v92 and above) - Site promotion type
tp.ia.sp_promotion (as of Boomerang 1.389) - tp_ia_sp_promotion (v92 and above) - Site promotion
tp.ia.sp_link (as of Boomerang 1.389) - tp_ia_sp_link (v92 and above) - Site promotion link
tp.ia.re_version (as of Boomerang 1.389) - tp_ia_re_version (v92 and above) - Real estate version
tp.ia.re_pagearea (as of Boomerang 1.389) - tp_ia_re_pagearea (v92 and above) - Real estate page area
tp.ia.re_link (as of Boomerang 1.389) - tp_ia_re_link (v92 and above) - Real estate link

HTTP Headers

HTTP Headers S3 Redshift (not included by default) Example The following fields are all subfields of the headers structure in the S3 JSON
CloudFlare HTTP headers added by CloudFlare
cf-visitor headers_cf_visitor Data added by CloudFlare.
cf-ray headers_cf_ray Ray added by CloudFlare to help trace the path of a request through their network.
cf-connecting-ip headers_cf_connecting_ip IP address of the remote user as seen by CloudFlare.
x-forwarded-for headers_x_forwarded_for List of IP addresses specifying user and all proxies between CloudFlare and the user.
x-forwarded-proto headers_x_forwarded_proto https, http, spdy, etc. Protocol used by end user’s browser to connect to CloudFlare endpoint.
Browser HTTP headers added by the browser. See the HTTP spec for more details.
connection headers_connection close, keep-alive The HTTP Connection header specifies if the browser is willing to handle persistent TCP conections or not.
host headers_host The beacon server where the beacon was sent. This is required by the HTTP specification.
accept-encoding headers_accept_encoding gzip, deflate, sdch List of encoding (compression) types supported by the user’s browser.
accept-language headers_accept_language en_US, fr_CH, etc Language encodings supported by the user’s browser. This could suggest the user’s locale.
accept headers_accept Content types supported by the browser, along with their priorities.
content-length headers_content_length This is only used for POST beacons and is the number of bytes in the POSTed beacon.
Proxy HTTP headers added by intermediate proxies. Use Google for more details
Various various headers_various X-Bluecat-Proxy It is not possible to compile an exhaustive list here, but we will add the most common as we come across them

Other Parameters

Query String Param S3 RedShift Example The following fields are subfields of the params structure in the S3 JSON
NavigationTiming Overview
nt_nav_type nt_nav_type params_nt_nav_type f Navigation Type
nt_nav_st nt_nav_st params_nt_nav_st
nt_red_st nt_red_st params_nt_red_st
nt_red_end nt_red_end params_nt_red_end
nt_red_cnt nt_red_cnt params_nt_red_cnt
nt_fet_st nt_fet_st params_nt_fet_st
nt_dns_st nt_dns_st params_nt_dns_st
nt_dns_end nt_dns_end params_nt_dns_end
nt_con_st nt_con_st params_nt_con_st
nt_ssl_st nt_ssl_st params_nt_ssl_st
nt_con_end nt_con_end params_nt_con_end
nt_req_st nt_req_st params_nt_req_st
nt_res_st nt_res_st params_nt_res_st
nt_unload_st nt_unload_st params_nt_unload_st
nt_unload_end nt_unload_end params_nt_unload_end
nt_domloading nt_domloading params_nt_domloading
nt_res_end nt_res_end params_nt_res_end
nt_domint nt_domint params_nt_domint
nt_domcontloaded_st nt_domcontloaded_st params_nt_domcontloaded_st
nt_domcontloaded_end nt_domcontloaded_end params_nt_domcontloaded_en
nt_domcomp nt_domcomp params_nt_domcomp
nt_load_st nt_load_st params_nt_load_st
nt_load_end nt_load_end params_nt_load_end
nt_firstpaint nt_firstpaint params_nt_first_paint note that this is milliseconds on IE, but seconds.microseconds on Chrome. Not supported on other browsers.
nt_spdy nt_spdy params_nt_spdy 1 or 0 Whether the page was served using SPDY.
nt_cinf nt_cinf params_nt_cinf http/2 Connection Information for page.
rt.bmr rt.bmr params_rt_bmr_conEn, params_rt_bmr_conSt, params_rt_bmr_domEn, params_rt_bmr_domSt, params_rt_bmr_fetSt, params_rt_bmr_reqSt, params_rt_bmr_resEn, params_rt_bmr_resSt, params_rt_bmr_secSt 145,124,1 Resource Timing values for Boomerang, compressed using the Resource Timing compression algorithm.
rt.cnf rt.cnf same as above with cnf instead of bmr 301,100,97 Resource Timing values for config.js, compressed using the Resource Timing compression algorithm.
restiming restiming NA (decompressed timings go in their own table, see below for details) Compressed resource timing data for all available resources on the page. See http://nicj.net/compressing-resourcetiming/ and https://github.com/nicjansma/resourcetiming-compression.js for details.

Debugging Info and Timestamps

Debugging Info and Timestamps Query String Param S3 RedShift Example Other browser timestamps and related information taken in Boomerang, mainly used for debugging
Boomerang version v v
rt.start rt.start params_rt_start none, navigation, cookie, manual Specifies the method used to determine the start time.
rt.tstart rt.tstart params_rt_tstart Timestamp of navigation start using the method specified in rt.start.
rt.cstart rt.cstart params_rt_cstart The value of t_start from the cookie, if different from rt.tstart.
rt.bstart rt.bstart params_rt_bstart The timestamp when Boomerang started.
rt.blstart rt.blstart params_rt_blstart The timestamp when Boomerang was added to the host page.
rt.end rt.end params_rt_end The timestamp when the t_done timer ended.
Session History rt.sh rt.sh params_rt_sh Session History is used for debugging.
Session Reset rt.srst rt.srst params_rt_srst Past details of session when it gets reset.
Token Timestamp h.t h.t params_h_t Server timestamp when the anti-csrf token was generated (note the token is removed from the beacon).
Anti CSRF Token h.cr params_h_cr The anti-csrf token added to the beacon.
Unload flag rt.quit rt.quit params_rt_quit If this parameter exists, then this was an unload beacon.
Abort flag rt.abld rt.abld params_rt_abld If this parameter exists, then the user left the page before it finished loading.
Invisible flag rt.ntvu rt.ntvu params_rt_ntvu If this parameter exists, then the user left the page without looking at it.
Iframe flag if if params_if If this parameter exists, then Boomerang was loaded via the iFrame loader technique.
Errors errors errors params_errors JavaScript errors found in Boomerang.

URLs

URLs Query String Param S3 RedShift Example URLs related to the beacon
Page/SPA URL u u params_u URL of Page or SPA route that caused the beacon.
Page URL pgu pgu params_pgu Page URL if different from u.
Cookie Referrer r r params_r URL of previous page that Boomerang wrote into a cookie.
Referrer r2 r2 params_r2 Referrer of current page if different from r.
Next URL nu nu params_nu URL clicked, if this beacon was a result of a click.

Page Struture

Query String Param S3 RedShift Example Details about the page structure like DOM nodes, SCRIPTs, etc.
dom.res dom.res params_dom_res Number of resources in ResourceTiming.
dom.doms dom.doms params_dom_doms Number of domains referenced from page.
dom.ln dom.ln params_dom_ln Number of DOM nodes on the page.
dom.sz dom.sz params_dom_sz Rendered bytes of base page. This may not be what was sent on the network.
dom.img dom.img params_dom_img Number of image nodes on the page.
dom.img.ext dom.img.ext params_dom_img_ext Number of image nodes on the page that referenced external URLs.
dom.script dom.script params_dom_script Number of script nodes on the page.
dom.script.ext dom.script.ext params_dom_script_ext Number of script nodes on the page that referenced external URLs.
dom.res.slowest dom.res.slowest params_dom_res_slowest Slowest resource on page (if configured).

Screen and Device Details

Query String Param S3 RedShift Example Details about screen resolution, CPU, memory, battery, etc.
scr.xy scr.xy params_scr_xy Screen width and height seperated with x.
scr.sxy scr.sxy params_scr_sxy X & Y positions of the scroll bar seperated with x.
scr.bpp scr.bpp params_scr_bpp Screen colour depth and pixel depth separated by /
scr.orn scr.orn params_scr_orn portrait, landscape Screen orientation
scr.dpx scr.dpx params_scr_dpx Screen device pixel ratio (informs you of details like Retina).
scr.mtp scr.mtp params_scr_mtp Maximum touch points for touchscreens.
mem.total mem.total params_mem_total Total Memory available to the browser.
mem.limit mem.limit params_mem_limit Limit of the JS Heap size in the browser.
mem.used mem.used params_mem_used Total Memory used by the browser.
cpu.cnc cpu.cnc params_cpu_cnc Hardware concurrency (number of CPU cores) available to the browser.
bat.lvl bat.lvl params_bat_lvl Battery charge level (between 0 & 1)

Visibility State

Query String Param S3 RedShift Example Tells you when the user last had the page hidden or visible on screen
vis.st vis.st params_vis_st visible, hidden Document’s visibility state when beacon was sent.
vis.lv vis.lv params_vis_lv Timestamp when page was last visible.
vis.lh vis.lh params_vis_lh Timestamp when page was last hidden.

User Agent Details

Query String Param S3 RedShift Example More user agent details, these will eventually go into the User Agent structure above
ua.plt ua.plt params_ua_plt User Agent Platform
ua.vnd ua.vnd params_ua_vnd User Agent Vendor

XHR Details

Query String Param S3 RedShift Example Details related to Single Page Apps using XHR
http.errno http.errno http_errno Status code of XHR request in case of error. Note: This is a global field in the S3 JSON. Some special codes are: -1001: timeout, -999: request aborted by client, -998: unknown client error, -997: javascript exception when calling open
http.method http.method params_http_method HTTP method used for XHR request.
http.hdr http.hdr params_http_hdr HTTP response headers for XHR request (optional).
http.initiator http.initiator params_http_initiator Type of single page app.
xhr.sync xhr.sync params_xhr_sync Set to 1 if the XHR call was synchronous.
rt.subres rt.subres params_rt_subres Set to 1 if this XHR call is a subresource of the parent page and should not be counted towards session length in pages.

Bandwidth and Latency Details

Query String Param S3 RedShift Example More details from the bandwidth test
bw_time bw_time params_bw_time Timestamp when bandwidth was last calculated.
lat lat params_lat HTTP latency
lat_err lat_err params_lat_err Standard error in calculating HTTP latency.
Also see the Bandwidth section above

Mobile Connection Details

Query String Param S3 RedShift Example Details about mobile connection
mob.ct mob.ct params_mob_ct Mobile Connection Type (only in some versions of Android)
mob.bw mob.bw params_mob_bw Advertised bandwidth of mobile connection.
mob.mt mob.mt params_mob_mt this mobile connection metered or not.

Resource Timing Data

Resource Timing Data is compressed and passed in via a single beacon parameter. The compression is described at http://nicj.net/compressing-resourcetiming/

The full resource timing documentation can be found at https://www.w3.org/TR/resource-timing-2/

This field is expanded into a separate table in Redshift, which includes the following fields:

Resource Timing Data Query String Param S3 RedShift Example Data from the ResourceTiming API that goes into its own table in RedShift
restiming restiming
params_u The URL of the page that this resource was loaded from
session_id The boomerang Session ID (matches session_id above) for this user session.
session_start The start time for the boomerang session (matches session_start above)
timestamp The server timestamp when this beacon got to our collectors.
name url The URL of the resource
initiatorType initiator_type img, image, css, script, link, other, xmlhttprequest
startTime start_time All these times are milliseconds from the page’s navigation start time available in nt_nav_st
redirectStart redirect_start
redirectEnd redirect_end
fetchStart fetch_start
domainLookupStart dns_start
domainLookupEnd dns_end
connectStart tcp_connection_start
secureConnectionStart secure_connection_start
connectEnd tcp_connection_end
requestStart request_start
responseStart response_first_byte
responseEnd response_last_byte
workerStart worker_start The time before the browser invokes a registered service worker on the page
encodedBodySize encoded_size Size of the encoded resource body (ie, with network compression enabled)
decodedBodySize decoded_size Size of the resource body after decompressing/removing content encoding
transferSize transferred_size Bytes transferred over the network including HTTP headers for all same-origin redirects. If resource is retrieved from cache, this is the size of headers required to validate the cache (eg: If-Modified-Since request)