Skip to content

Internal Events Tracking - iteration 0

Goal: Provide a single track_event method that updates both RedisHLL counters and sends Snowplow events

Implementation

Implement method that can be called roughly like this:

track_event("i_code_review_user_apply_suggestion", user_id: current_user.id, project_id: current_project.id, ...)

The first named argument will be used for counting uniqueness in RedisHLL.

  • Increase all RedisHLL metrics that are referring to i_code_review_user_apply_suggestion in the events section. In this example we want to count unique user_id.
  • Send a i_code_review_user_apply_suggestion Snowplow event with all named arguments and the standard context. (Only on SaaS)

Documentation

  • Initial version of documentation
  • Diagrams that illustrates how events and metrics are related and where they are available
  • Write a review checklist to help our team make sure no parts are missing

Migrate an existing metric

  • To validate the implementation, migrate a RedisHLL metric that is already duplicated to Snowplow.

Explicitly not included

  • Validation
  • New metric and event definitions
  • Generator
  • Redis all-time counters
Edited by Jonas Larsen