Open kingdonb opened 1 year ago
We have this going in Release v0.1.7 now, it's working, 🎉 I'll wait to close this until I can post a screenshot with several days of data and verify it doesn't crap out in a couple of collection intervals.
It also won't make much sense as a screenshot of time series data without retaining at least a few hours of collection first.
For certain controllers, at least for kustomize-controller, and maybe all controllers, we should track the number of downloads for package versions as well as for the package at the top-level. These can be stored in a separate table,
Versions
andVersionMeasurement
has the same structure as Package or Leaf, in the relationship where formerly:In the original design, this feature was omitted because it made things too complicated. Now that things are working pretty well, we can add it back in. We want to be able to see how fast people are upgrading. We can calculate a derivative from numbers that change in a time series over time. We can know in a relative sense, how many users are on each version of the controller based on how many downloads each version gets over time.
We will definitely want to see Kustomize controller versions and the relationship between version history in the Grafana database visualization just as we've seen here:
This will provide us with some actually useful information, how many users are upgrading, vs. the mostly unactionable information of "how many users downloaded flux controller so far" that is really difficult to relate to any tangible statistic. We don't know how many users and how many are bots. There is no way for us to know what proportion of this count represents new Flux users, and what proportion represents waste or repeated downloading.
We can imagine that it is a specific proportion, though, and we can speculate that it might be stable, so we can make inferences based on the rate of change and how it changes in the deltas.
So, we'd like to know how many Kustomize controller users are operating on versions prior to 2.0.0-rc.*, how many are running the RC builds, and how many run versions that come after. We can get these numbers and capture them over time, and it will be very useful to know how many Kustomize controller users are watching and upgrading every time we make a release. That is a tangible thing that we can now actually measure and count, engagement!