makeTracker

Creates a new BrowserTracker and adds it to the TrackerRepository. Then calls startAutoTracking for it.

makeTracker = (parameters: {
applicationId: string,
trackerId?: string,
queue?: TrackerQueue,
endpoint?: string,
transport?: TrackerTransport,
plugins?: TrackerPlugins,
active?: boolean,
anonymous?: boolean,
trackApplicationContext?: boolean
trackHttpContext?: boolean
trackPathContextFromURL?: boolean
trackRootLocationContextFromURL?: boolean
trackApplicationLoadedEvent?: boolean
}) => BrowserTracker
info

The first created Tracker is automatically set as default in the TrackerRepository. See also getTracker and setDefaultTracker

Parameters

typedefault value
requiredapplicationIdstring
optionaltrackerIdstringSame value as applicationId
optionalqueueTrackerQueueThe result of makeBrowserTrackerDefaultQueue
optionalendpointstring
optionaltransportTrackerTransportThe result of makeBrowserTrackerDefaultTransport
optionalpluginsTrackerPluginsThe result of makeBrowserTrackerDefaultPluginsList
optionalactivebooleantrue
optionalanonymousbooleanfalse
optionaltrackApplicationContextbooleantrue
optionaltrackHttpContextbooleantrue
optionaltrackPathContextFromURLbooleantrue
optionaltrackRootLocationContextFromURLbooleantrue
optionaltrackApplicationLoadedEventbooleantrue
caution

endpoint and transport are mutually exclusive. While both optional, either one must be specified.

When providing only endpoint, the Tracker will automatically create a Transport configuration initialized with it.

Returns

Usage example

import { makeTracker } from '@objectiv/tracker-browser';
makeTracker({
applicationId: 'awesome-app',
endpoint: 'https://collector.app.dev'
})
makeTracker({
applicationId: 'awesome-app',
transport: CustomTransport
})
Transport ?

Events are sent to the Collector via a composable layer of queueing, batching and sending classes called Transport.