beacon

package
v0.0.5 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 22, 2024 License: MIT Imports: 11 Imported by: 0

Documentation

Index

Constants

View Source
const COMPRESS_MODE_LARGE_NUMBERS = "1"

nolint: revive

View Source
const COMPRESS_MODE_PERCENT = "2"

nolint: revive

View Source
const COMPRESS_MODE_SMALL_NUMBERS = "0"

nolint: revive

View Source
const LARGE_NUMBER_WRAP = "."

nolint: revive

Variables

This section is empty.

Functions

func DecompressBucketLog

func DecompressBucketLog(data string) []uint64

DecompressBucketLog convert numbers encoded into string to array of numbers nolint: funlen, gocritic, nestif, gocognit, revive

Types

type Beacon

type Beacon struct {
	// Mobile
	Mob_Etype string
	Mob_Dl    string
	Mob_Rtt   string

	// Paint Timing
	Pt_Lcp string
	Pt_Fp  string
	Pt_Fcp string

	// Continuity
	C_E      string
	C_L      string
	C_Lb     string
	C_Tti_M  string
	C_Tti    string
	C_Tti_Vr string
	C_T_Fps  string
	C_F      string
	C_F_D    string
	C_F_M    string
	C_F_L    string
	C_F_S    string
	C_Cls    string
	C_Fid    string

	// Event Timing
	Et_Fid string
	Et_E   string

	// Roundtrip
	Rt_Start   string
	Rt_Bmr     string
	Rt_Tstart  string
	Rt_Bstart  string
	Rt_Blstart string
	Rt_End     string
	Rt_Tt      string
	Rt_Obo     string
	Rt_Si      string
	Rt_Ss      string
	Rt_Sl      string
	Rt_Quit    bool

	// Misc
	U              string
	T_Resp         string
	T_Page         string
	T_Done         string
	T_Other        string
	V              string
	Restiming      string
	CreatedAt      string
	Sv             string
	Sm             string
	Vis_St         string
	Ua_Plt         string
	Ua_Vnd         string
	Pid            string
	N              string
	Http_Initiator string

	// Navigation Timing
	Nt_Nav_St            string
	Nt_Fet_St            string
	Nt_Dns_St            string
	Nt_Dns_End           string
	Nt_Con_St            string
	Nt_Con_End           string
	Nt_Req_St            string
	Nt_Res_St            string
	Nt_Res_End           string
	Nt_Domloading        string
	Nt_Domint            string
	Nt_Domcontloaded_St  string
	Nt_Domcontloaded_End string
	Nt_Domcomp           string
	Nt_Load_St           string
	Nt_Load_End          string
	Nt_Unload_St         string
	Nt_Unload_End        string
	Nt_Ssl_St            string
	Nt_Enc_Size          string
	Nt_Dec_Size          string
	Nt_Trn_Size          string
	Nt_Protocol          string
	Nt_First_Paint       string
	Nt_Red_Cnt           string
	Nt_Nav_Type          string

	// Memory
	Dom_Res        string
	Dom_Doms       string
	Mem_Total      string
	Mem_Limit      string
	Mem_Used       string
	Mem_Lsln       string
	Mem_Ssln       string
	Mem_Lssz       string
	Mem_Sssz       string
	Scr_Xy         string
	Scr_Bpp        string
	Scr_Orn        string
	Cpu_Cnc        string
	Dom_Ln         string
	Dom_Sz         string
	Dom_Ck         string
	Dom_Img        string
	Dom_Img_Uniq   string
	Dom_Script     string
	Dom_Script_Ext string
	Dom_Iframe     string
	Dom_Link       string
	Dom_Link_Css   string
	Net_Sd         string
	Sb             string
}

Beacon contains the performance statistics from request

func FromEvent

func FromEvent(event *types.Event) Beacon

FromEvent creates Beacon request from http request parameters nolint: funlen

type HostnameEvent added in v0.0.3

type HostnameEvent struct {
	Hostname  string `json:"hostname"`
	UpdatedAt string `json:"updated_at"`
}

HostnameEvent contains the hostname data

func NewHostnameEvent added in v0.0.3

func NewHostnameEvent(
	hostname, updatedAt string,
) HostnameEvent

NewHostnameEvent creates HostnameEvent

type RumEvent

type RumEvent struct {
	Created_At               string      `json:"created_at"`
	Hostname                 string      `json:"hostname"`
	Url                      string      `json:"url"`
	Cumulative_Layout_Shift  json.Number `json:"cumulative_layout_shift,omitempty"`
	Geo_Country_Code         string      `json:"geo_country_code"`
	Geo_City_Name            string      `json:"geo_city_name"`
	Device_Type              string      `json:"device_type"`
	Device_Manufacturer      string      `json:"device_manufacturer,omitempty"`
	T_Resp                   string      `json:"t_resp"`
	T_Page                   string      `json:"t_page"`
	T_Done                   string      `json:"t_done"`
	Connect_Duration         string      `json:"connect_duration"`
	Ssl_Negotiation_Duration string      `json:"ssl_negotiation_duration"`
	Next_Hop_Protocol        string      `json:"next_hop_protocol"`
	Dns_Duration             string      `json:"dns_duration"`
	First_Byte_Duration      string      `json:"first_byte_duration"`
	Session_Id               string      `json:"session_id"`
	Session_Length           string      `json:"session_length"`
	Operating_System         string      `json:"operating_system"`
	Operating_System_Version string      `json:"operating_system_version,omitempty"`
	Browser_Name             string      `json:"browser_name"`
	Browser_Version          string      `json:"browser_version,omitempty"`
	Event_Type               string      `json:"event_type"`
	Redirect_Duration        string      `json:"redirect_duration"`
	Redirects_Count          string      `json:"redirects_count"`
	First_Contentful_Paint   string      `json:"first_contentful_paint"`
	First_Paint              string      `json:"first_paint"`
	First_Input_Delay        json.Number `json:"first_input_delay,omitempty"`
	Largest_Contentful_Paint string      `json:"largest_contentful_paint"`
	User_Agent               string      `json:"user_agent,omitempty"`
	Visibility_State         string      `json:"visibility_state"`
	Boomerang_Version        string      `json:"boomerang_version"`
	Screen_Width             string      `json:"screen_width"`
	Screen_Height            string      `json:"screen_height"`
	Dom_Res                  string      `json:"dom_res"`
	Dom_Doms                 string      `json:"dom_doms"`
	Mem_Total                string      `json:"mem_total,omitempty"`
	Mem_Limit                string      `json:"mem_limit,omitempty"`
	Mem_Used                 string      `json:"mem_used,omitempty"`
	Mem_Lsln                 string      `json:"mem_lsln"`
	Mem_Ssln                 string      `json:"mem_ssln"`
	Mem_Lssz                 string      `json:"mem_lssz"`
	Scr_Bpp                  string      `json:"scr_bpp"`
	Scr_Orn                  string      `json:"scr_orn"`
	Cpu_Cnc                  string      `json:"cpu_cnc"`
	Dom_Ln                   string      `json:"dom_ln"`
	Dom_Sz                   string      `json:"dom_sz"`
	Dom_Ck                   string      `json:"dom_ck"`
	Dom_Img                  string      `json:"dom_img"`
	Dom_Img_Uniq             string      `json:"dom_img_uniq"`
	Dom_Script               string      `json:"dom_script"`
	Dom_Script_Ext           string      `json:"dom_script_ext"`
	Dom_Iframe               string      `json:"dom_iframe"`
	Dom_Link                 string      `json:"dom_link"`
	Dom_Link_Css             string      `json:"dom_link_css"`
	Page_Id                  string      `json:"page_id"`
	Ua_Vnd                   string      `json:"ua_vnd,omitempty"`
	Ua_Plt                   string      `json:"ua_plt,omitempty"`
	Data_Saver_On            json.Number `json:"data_saver_on,omitempty"`
	Mob_Etype                string      `json:"mob_etype,omitempty"`
	Mob_Dl                   json.Number `json:"mob_dl,omitempty"`
	Mob_Rtt                  json.Number `json:"mob_rtt,omitempty"`
}

RumEvent contains the Rum event data

func ConvertToRumEvent

func ConvertToRumEvent(b Beacon, event *types.Event, userAgentParser *uaparser.Parser, geoIPService geoip.Service) RumEvent

ConvertToRumEvent convert Beacon request to Rum Event

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL