Import members from @edx/frontend-platform/analytics
Contains a shared interface for tracking events. Has a default implementation of SegmentAnalyticsService, which supports Segment and the Tracking Log API (hosted in LMS).
The initialize function performs much of the analytics configuration for you. If, however,
you're not using the initialize function, analytics can be configured via:
import { configure, SegmentAnalyticsService } from '@edx/frontend-platform/analytics';
import { getConfig } from '@edx/frontend-platform';
import { getAuthenticatedHttpClient } from '@edx/frontend-platform/auth';
import { getLoggingService } from '@edx/frontend-platform/logging';
configure(SegmentAnalyticsService, {
config: getConfig(),
loggingService: getLoggingService(),
httpClient: getAuthenticatedHttpClient(),
});
As shown in this example, analytics depends on the configuration document, logging, and having an authenticated HTTP client.
- Source:
Classes
Interfaces
Methods
(inner) configure(AnalyticsService, options) → {AnalyticsService}
Parameters:
| Name | Type | Description |
|---|---|---|
AnalyticsService |
class | |
options |
* |
- Source:
Returns:
- Type
- AnalyticsService
(inner) getAnalyticsService() → {AnalyticsService}
- Source:
Returns:
- Type
- AnalyticsService
(inner) identifyAnonymousUser(traits) → {Promise}
Parameters:
| Name | Type | Description |
|---|---|---|
traits |
* |
- Source:
Returns:
- Type
- Promise
(inner) identifyAuthenticatedUser(userId, traits)
Parameters:
| Name | Type | Description |
|---|---|---|
userId |
* | |
traits |
* |
- Source:
(inner) resetAnalyticsService()
- Source:
(inner) sendPageEvent(category, name, properties)
Parameters:
| Name | Type | Description |
|---|---|---|
category |
* | |
name |
* | |
properties |
* |
- Source:
(inner) sendTrackEvent(eventName, properties)
Parameters:
| Name | Type | Description |
|---|---|---|
eventName |
* | |
properties |
* |
- Source:
(inner) sendTrackingLogEvent(eventName, properties) → {Promise}
Parameters:
| Name | Type | Description |
|---|---|---|
eventName |
* | |
properties |
* |
- Source:
Returns:
- Type
- Promise