-
Task
-
Resolution: Done
-
Major
-
None
-
None
-
None
-
False
-
-
False
-
ANSTRAT-137 - Insights reports for Partners (metric collection)
Goal: Log information about users downloading collections from console.redhat.com for ansible analytics to consume and report to partners. The short term goal is to be able to tell our partner’s who is using their collections. The long term goal is to be able to provide a UI for viewing collection download metrics in private automation hub.
Approach: create a new database model that stores information about every download that occurs
Models
CollectionDownloadLog
Subclass pulpcore.plugin.models.BaseModel
Fields:
- collection_version: FK to collection version
- user: FK to user or none of anonymous
- ip: ip address that’s requesting the download
- org_id: str
- user_agent: user agent requesting the download
- repository: fk to repository that user is downloading from
Views
Update the collection artifact download view to log the information specified in the model above every time a collection is downloaded.
The org_id won't be available for on premise. It can be retrieved from the request object using an approach similar to this: https://github.com/ansible/galaxy_ng/blob/master/galaxy_ng/app/access_control/access_policy.py#L214. In cases where no red hat headers are available, this should be set to none in the database.
Additional view for retrieving the information on: v3/plugin/ansible/collection-downloads into https://github.com/pulp/pulp_ansible/blob/main/pulp_ansible/app/galaxy/v3/views.py while alloving filtering on all fields and in addition on:
- collection_version__namespace
- collevtion_version_collection_name
- repository__name
- is blocked by
-
AAH-1821 upgrade to pulp_ansible 0.15
- Closed