Update Audience and Behavior dashboards to call from Snowplow-specific Cube schemas
Summary
As part of our switch over to Snowplow, we currently have visualizations that are referring to Cube schemas specifically built for Jitsu https://gitlab.com/gitlab-org/analytics-section/product-analytics/devkit/-/tree/main/cube/schema, e.g., Sessions
and TrackedEvents
. We have Snowplow-specific schemas such as SnowplowTrackedEvents
and SnowplowSessions
.
Ideally the Snowplow-specific schemas will simply replace the Jitsu-specific ones, but to ensure a smooth transition since there are moving parts between GitLab and the Analytics Stack, we may want to create additional visualizations that are served via a feature flag, which can then replace the Jitsu-specific visualizations once the product_analytics_snowplow_support
feature flag has been removed.
Implementation plan
- Define existing Audience and Behaviour dashboards using snowplow schemas in
JSONYAML. (We can probably use the existing hard-coded Jitsu ones as a template)- These files will need to be stored in the GitLab project itself.
- Change
ProductAnalytics::Dashboard
to append both of these dashboards to every project's dashboard list when the feature flag is enabled.- Note it should only be appended if the product analytics feature is enabled and onboarded.
- Update documentation in
doc/user/product_analytics/index.md
(see also !117687 (comment 1367125922)) - Existing dashboards/visualizations for jitsu-supported projects should be unaffected. (Use the
product_analytics_snowplow_support
feature flag)