Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(analytics-module-segment): create the analytics plugin module for segment #12

Merged
merged 3 commits into from
Sep 6, 2024

Conversation

alecjacobs5401
Copy link
Contributor

Description

This PR implements a custom Backstage analytics module plugin specifically geared around Segment analytics.

Seeing as this is Segment's open-source backstage plugin library, it seems prudent that Segment contributes an analytics library for our own product!

This is definitely a v0.1.0 version, with much more support possibly planned for the future:

  • registering groups based on user ownership refs
  • allowing for custom event mapping logic

For now, we simply look at the core supported key events and primarily handle the following:

  • navigate events to analytics.page() events
  • create events as analytics.track() events where the event name is the name of the thing created (e.g. the software template executed)
  • all other events as analytics.track() events with the action as the event name

@alecjacobs5401 alecjacobs5401 force-pushed the backstage-plugin-segment-analytics branch from 9cb9a7e to 52dc681 Compare August 29, 2024 23:31
Comment on lines +14 to +18
"backstage": {
"role": "frontend-plugin-module",
"pluginId": "app",
"pluginPackage": "@backstage/plugin-app-backend"
},
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this config was stolen (with love) from the backstage-community analytics plugins. This is what they set, so thats what I'll set.

@alecjacobs5401 alecjacobs5401 force-pushed the backstage-plugin-segment-analytics branch from 34e19cc to 9b4a643 Compare August 30, 2024 16:11
@alecjacobs5401 alecjacobs5401 marked this pull request as ready for review August 30, 2024 16:56
@alecjacobs5401 alecjacobs5401 requested a review from a team as a code owner August 30, 2024 16:56
bhavanki
bhavanki previously approved these changes Sep 3, 2024
Copy link

@bhavanki bhavanki left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice and tidy! My feedback is mostly docs, so nothing blocking. I do note that SHA256 alone isn't really enough for anonymization, but that is definitely a problem to tackle separately, and having what's here now is better than having no hashing at all.

app-config.yaml Show resolved Hide resolved
plugins/analytics-module-segment/README.md Show resolved Hide resolved
plugins/analytics-module-segment/README.md Show resolved Hide resolved
plugins/analytics-module-segment/README.md Outdated Show resolved Hide resolved
plugins/analytics-module-segment/config.d.ts Outdated Show resolved Hide resolved
plugins/analytics-module-segment/config.d.ts Outdated Show resolved Hide resolved
@alecjacobs5401 alecjacobs5401 force-pushed the backstage-plugin-segment-analytics branch from 1b97955 to d39a9ca Compare September 6, 2024 17:01
@alecjacobs5401 alecjacobs5401 merged commit 797ab8d into main Sep 6, 2024
5 checks passed
@alecjacobs5401 alecjacobs5401 deleted the backstage-plugin-segment-analytics branch September 6, 2024 21:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants