Measure user-level adoption of the Package Registry
Problem to solve
As the Product Manager of the Package Stage and Group at GitLab, I need to measure and report on user-level activity, so that myself and GitLab as an organization can make data-driven decisions.
For the Package stage, we are focused on driving GMAU and because Package is both the Group and the Stage, SMAU. The problem is that we do not currently have the ability to measure this data, because we have not instrumented these events with the usage ping.
Intended users
Proposal
Use the usage ping as a distinct batch counter to measure the adoption of the GitLab Package Registry.
Events
- Publish package: Whenever a Maven, NPM, NuGet, Conan, PyPI, Composer package is successfully published to the Package Registry, count the event at the user level.
- Pull package: Whenever a Maven, NPM, NuGet, Conan, PyPI, Composer or Go* package is successfully installed from the Package Registry, count the event at the user level.
**I did not include Go packages in the publish package event, because they aren't really being published. But I did include them in the installed version.
Further details
Database
-
❓ Do we need to add user_id or installed_date to the packages -
❓ Consider starting to track installs/downloads for reporting back to front-end
Permissions and Security
- There are no permissions changes required for this change
- As reminder, the usage ping is opt-in only. (Why should I enable the usage ping)
Documentation
Availability & Testing
- Due to the nature of the usage ping data being delayed, this issue will require additional time for verification and will also require the additional step of updating the versions.db and updating SiSense with charts.
What does success look like, and how can we measure that?
- Success looks like the Package Group and Stage are able to measure adoption and growth using GMAU/SMAU/AMAU and be included as part of TMAU.
Edited by Tim Rizzi