Interface AnalyticsClassifier
AnalyticsExporter
which is responsible for exporting analytics from the device. This means that
the classifier is used to route interesting events into the correct
channels that correspond to exporters.
By combining classifiers and exporters, a given subset of analytics can be forwarded to an arbitrary destination. Since an event can be in multiple channels, this also allows routing events to multiple destinations.
By default KOS logs all events to AnalyticsServer.DEFAULT_CHANNEL
. As
this classifier is set early in the boot process, it can capture events that
other classifiers can't. Typically the system agent will provide an exporter
for this channel (AnalyticsServer.DEFAULT_CHANNEL
).
Since KOS provides a default classifier, the only reason to add additional classifiers is to send a subset of the analytics stream to another destination. For example, a business partner may require certain events to drive their business case. They can add a classifier and exporter to extract the data they need directly from the device.
Since every channel represents a persistent copy of analytic events, having a channel with no exporter will simply fill the database with events that are never used. The service will purge data by size and date, so it will generally not cause issues, but a channel without an exporter makes little sense.
- Since:
- 1.0
- Version:
- 2024-03-19
-
Method Summary
Modifier and TypeMethodDescriptionvoid
classifyAnalyticsRecord
(AnalyticsRecord record, Set<String> channels) Called to classify the channels that the record should be sent to.
-
Method Details
-
classifyAnalyticsRecord
Called to classify the channels that the record should be sent to. The classifier can examine the event and optionally add channel names to the provided set.- Parameters:
record
- the analytics record to examinechannels
- the set of channels to add to
-