...
Analytics Events (edx-platform)
If you need to create events, you should get familiar with the /wiki/spaces/AN/pages/13205895. Two types of events, internal ('edx.bi').... FINISH THIS.
In addition to choosing between server-side and client-side implementation of event, consider Mobile which is not addressed here specifically.
Server-side events (includes celery)
- Rule of thumb: Use server-side events where possible. More context is available. Less likely to have false duplicate events.
- tracker.emit
- Emits to Tracking Log and downstream tools (e.g. Vertica/Tableau, edX Research Package, etc.)
- Emits to Segment.
- In turn, based on whitelist, events are sent to Google Analytics (GA)
Client-side events
- Client-side events can easily have bad duplicates. Use server-side events when and where possible.
- Logger.log
- Note: Should be renamed to Tracker.emit, but requires a deprecation strategy including telling course teams.
- Emits to Tracking Log and downstream tools only.
- analytics.track
- Emits to Segment.
- In turn, emits to other tools (GA, Google Tag Manager, Optimizely, Qualaroo, Crazy Egg, Marketing tools
- Emits to Segment.
Tools
Analytics Tools:
- Google Analytics (GA)
- Google Tag Manager
- Firebase Analytics
- Fabric (Gabe said ?)
- Segment (a.k.a. Segment.io)
- Tracking Log
- Splunk4Tracking
- Vertica (Data Warehouse)
- Tableau (Visualization using Data Warehouse)
- edX Insights
- edX Research Packages
- Optimizely (A/B Testing)
- Qualaroo (survey tool)
- Crazy Egg (screen recording/heat mapping, may or may not be used)
- Marketing
- Sailthru (email marketing)
- Facebook ad reporting
- edX Insights
- edX Research Packages
Diagnostic Tools (includes Performance):
- Course Graph
- Splunk (logs)
- NewRelic
- Datadog (deprecated)
Other Concerns
- Data storage
- Limits (e.g. Splunk Logs)
- Privacy (who has access?)
- How long does data live?