Package com.tccc.kos.core.service.analytics
Analytic events are objects that carry a type and data payload. By default, event data is serialized using the
AnalyticsEvent
.View JSON view, but developers may override the view to control which fields are included.
Events are recorded through the AnalyticsService
. Once recorded, they are classified into channels by
AnalyticsClassifier
instances. Channels determine how events are exported. By default, all events are sent
to AnalyticsServer.DEFAULT_CHANNEL
, but custom classifiers can be added to copy subsets of events into
different channels. Each channel is paired with an AnalyticsExporter
that delivers the data to a
destination such as a cloud service. Events can be given a priority of low, medium, or high, which controls how
quickly the associated exporter is called. Every channel should have an associated exporter; otherwise, the channel
will accumulate and purge data by size and date without the data ever being used.
On multi-node devices, analytics recorded on secondary nodes are transferred to the primary node. The primary node aggregates its own data with that from the secondaries, classifies the events into channels, and manages export through the configured exporters.
- Since:
- 1.0
- Version:
- 2022-10-21
-
ClassDescriptionAn
AnalyticsExporter
that is bound to a single channel.Before analytic events are recorded, they are classified into channels.AnAnalyticsChannelExporter
that is bound to the default KOS analytics channel.Analytics event that can either be used as a base class for event data or as a wrapper for existing objects when they are to be recorded as events.Analytics bean using during export.AnAnalyticsExporter
is responsible for exporting analytics beans to a destination.Priority levels for aAnalyticsEvent
.Represents an internal form of an analytics event used for classification and database storage.Interface for the analytics service which is used to record analytic events for classification and exporting off device.