@availity/analytics-core v4.1.0
Analytics Core
A package providing a base Analytics class to track events and page views
Install
npm install @availity/analytics-core
Configuration
AvAnalytics
requires Plugins and a Promise lib.
new AvAnalytics(plugins, promise);
AvAnalytics
also has an optional 3rd parameter, a boolean to determine if pageTracking is enabled.
For page tracking to be used, startPageTracking
and stopPageTracking
functions must be defined to create listeners and call trackPageView
.
AvAnalytics
also has an optional 4th parameter, "autoTrack", a boolean which default to true
.
When true
, "autoTrack" will be enabled which will automatically log
new AvAnalytics(plugins, promise, pageTracking, autoTrack);
Plugins
Plugins can be one or an array of objects/classes:
A default class with functions defined and enabled logic is provided AvAnalyticsPlugin
.
import {AvAnalyticsPlugin} from '@availity/analytics-core';
Plugin Methods
the functions/properties used by AvAnalytics
are:
isEnabled
Determines if this plugin will be called at various points. If this is a function, the return value will be used. Otherwise will be checked as boolean.
init
if defined, will be called when AvAnalytics
is initialized.
trackEvent
if defined, called when AvAnalytics
receives a trackEvent call.
trackPageView
if defined, called when AvAnalytics
receives a trackPageView call.
Defined Plugins
AvSplunkAnalytics
AvSplunkAnalytics
is a plugin to track events with the AvLogMessages
api.
It defaults the url and level before sending.
import {AvSplunkAnalytics} from '@availity/analytics-core';
const exmpleSplunkAnalytics = new AvSplunkAnalytics(AvLogMessages, isEnabled);
Methods
init()
Initialize analytics pageTracking and plugins
setPageTracking(value)
use parameter to set turn page tracking on/off. Always checks that pageTracking has been set up or torn down as needed.
trackEvent(properties)
Send properties to each plugins trackEvent
function.
trackPageView(url)
Send url or location.href
to each plugins trackEvent
function.
AutoTrack Logged events
With "autoTrack" enabled (enabled by default) you can add special data-analytics-*
to any element which will be rendered to the DOM.
For native form elements (input, select, and textarea) with the special attribute, focus
and blur
events will trigger analytics to be logged.
For all other element with the special attribute, click
events will trigger analytics to be logged.
You can have as many of the data-analytics-*
attributes on an element as you which, all of the properties will be logged with the data-analytics-
prefix removed and the remaining camelcased as the key and the value of the attribute as the logged value.
This works with all libraries such as angular, react, jquery, and pure HTML.
<a
href="/some-place-cool"
data-analytics-variation="b"
data-analytics-organization-id={orgId}
data-analytics-page-num={currentPage}>
Go there now!
</a>
import { Input } from 'reactstrap';
//...
<Input
data-analytics-variation="b"
data-analytics-organization-id={orgId} />
Authors
Kasey Powers
License
2 months ago
3 months ago
9 months ago
9 months ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
6 years ago
6 years ago
6 years ago