mirror of
https://github.com/ilri/dspace-statistics-api.git
synced 2025-01-24 19:33:25 +01:00
Alan Orth
806d63137f
requirements.txt: Use kazoo 2.5.0
SolrClient 0.2.1 currently depends on kazoo 2.2.1, but there is an issue with Python 3.7 in kazoo <= 2.5.0. Kazoo 2.5.0 fixes the is- sue with Python 3.7, and for my limited usage of SolrClient it se- ems to work fine. See: https://github.com/moonlitesolutions/SolrClient/issues/79
DSpace Statistics API
A quick and dirty REST API to expose Solr view and download statistics for items in a DSpace repository.
Written and tested in Python 3.5, 3.6, and 3.7. Requires PostgreSQL version 9.5 or greater for UPSERT
support.
Installation
Create a virtual environment and run it:
$ python -m venv venv
$ . venv/bin/activate
$ pip install -r requirements.txt
$ gunicorn app:api
Using the API
The API exposes the following endpoints:
- GET
/items
— return views and downloads for all items that Solr knows about¹. Acceptslimit
andpage
query parameters for pagination of results. - GET
/item/id
— return views and downloads for a single item (id must be a positive integer).
¹ We are querying the Solr statistics core, which technically only knows about all items that have either views or downloads.
Todo
- Add API documentation
- Close up DB connection when gunicorn shuts down gracefully
- Better logging
- Return HTTP 404 when item_id is nonexistent
- Tests
License
This work is licensed under the GPLv3.
Description
A simple REST API to expose Solr view and download statistics for items in a DSpace repository.
Readme
1.6 MiB
Languages
Python
100%