Description
openedon May 19, 2020
It would be good to know the amount of users for each component that we have.
I think this would look like just a mapping of (componentID, version) => count
I think to do this the URLs returned from the go-update server would be to itself, which would then redirect to the real URL. A map could be updated with a count, and there could be a task that updates the DB with the counts periodically (e.g. once per minute for example). I'd recommend against 1 update to the DB per component download request.
On startup, the count would be taken from dynamodb so that if the component is updated, the counts don't start back at 0.
brave-core-crx-updater could perhaps get an additional small script with command line params that allows you to query a component ID and a version (or omit version to get the latest version) to get a count directly from dynamodb.
The architecture described here is just an idea, I'm open to other ideas. E.g. maybe log based and then an aggregator would be another approach.
See plan below by @jumde 👍