ckanext-statistics

A CKAN extension for accessing download statistics

https://github.com/naturalhistorymuseum/ckanext-statistics

Science Score: 62.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
    1 of 4 committers (25.0%) from academic institutions
  • Institutional organization owner
    Organization naturalhistorymuseum has institutional domain (www.nhm.ac.uk)
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (15.0%) to scientific vocabulary

Keywords

ckan ckan-extension

Keywords from Contributors

sketchfab gbif
Last synced: 6 months ago · JSON representation ·

Repository

A CKAN extension for accessing download statistics

Basic Info
  • Host: GitHub
  • Owner: NaturalHistoryMuseum
  • License: gpl-3.0
  • Language: Python
  • Default Branch: main
  • Homepage:
  • Size: 258 KB
Statistics
  • Stars: 1
  • Watchers: 4
  • Forks: 1
  • Open Issues: 1
  • Releases: 40
Topics
ckan ckan-extension
Created over 8 years ago · Last pushed 7 months ago
Metadata Files
Readme Changelog Contributing License Code of conduct Citation Support

README.md

The Natural History Museum logo.

ckanext-statistics

Tests Coveralls CKAN Python Docs

A CKAN extension for accessing instance statistics.

Overview

Shows statistics for datasets and downloads on the CKAN instance.

NB: This extension currently only works with the Natural History Museum's theme extension ckanext-nhm.

Installation

Path variables used below: - $INSTALL_FOLDER (i.e. where CKAN is installed), e.g. /usr/lib/ckan/default - $CONFIG_FILE, e.g. /etc/ckan/default/development.ini

Installing from PyPI

shell pip install ckanext-statistics

Installing from source

  1. Clone the repository into the src folder: shell cd $INSTALL_FOLDER/src git clone https://github.com/NaturalHistoryMuseum/ckanext-statistics.git

  2. Activate the virtual env: shell . $INSTALL_FOLDER/bin/activate

  3. Install via pip: shell pip install $INSTALL_FOLDER/src/ckanext-statistics

Installing in editable mode

Installing from a pyproject.toml in editable mode (i.e. pip install -e) requires setuptools>=64; however, CKAN 2.9 requires setuptools==44.1.0. See our CKAN fork for a version of v2.9 that uses an updated setuptools if this functionality is something you need.

Post-install setup

  1. Add 'statistics' to the list of plugins in your $CONFIG_FILE: ini ckan.plugins = ... statistics

  2. Upgrade the database to create the tables: shell ckan -c $CONFIG_FILE db upgrade -p statistics

Configuration

These are the options that can be specified in your .ini config file.

| Name | Description | |----------------------------------------|-----------------------------------------------------------------------------------------------------------------------| | ckanext.statistics.resource_ids | IDs of collection resources (space separated). | | ckanext.statistics.gbif_dataset_keys | GBIF dataset keys (space separated). If not specified, tries ckanext.gbif.dataset_key. Defaults to an empty string. |

Cache settings

These settings are used to directly configure a beaker cache region named ckanext_statistics. Please see their configuration docs for more information and additional options.

| Name | Description | Example | |-----------------------------------|---------------------------------------------------|----------------------------| | ckanext.statistics.cache.type | Cache backend. | ext:redis | | ckanext.statistics.cache.url | URL for the backend. | redis://localhost:6379/0 | | ckanext.statistics.cache.expire | Time until the cache content expires, in seconds. | 3600 |

Usage

Actions

download_statistics

Statistics for downloads of datasets from the instance.

```python from ckan.plugins import toolkit

all of these filters are optional

datadict = { 'resourceid': RESOURCE_ID, 'year': YEAR, 'month': MONTH }

toolkit.getaction('downloadstatistics')( context, data_dict ) ```

dataset_statistics

Statistics for dataset records.

```python from ckan.plugins import toolkit

these filters are optional

datadict = { 'resourceid': RESOURCE_ID, }

toolkit.getaction('datasetstatistics')( context, data_dict ) ```

Testing

There is a Docker compose configuration available in this repository to make it easier to run tests. The ckan image uses the Dockerfile in the docker/ folder.

To run the tests against ckan 2.9.x on Python3:

  1. Build the required images: shell docker compose build

  2. Then run the tests. The root of the repository is mounted into the ckan container as a volume by the Docker compose configuration, so you should only need to rebuild the ckan image if you change the extension's dependencies. shell docker compose run ckan

Owner

  • Name: Natural History Museum
  • Login: NaturalHistoryMuseum
  • Kind: organization
  • Location: London

Citation (CITATION.cff)

cff-version: 1.2.0
title: CKAN Statistics extension
message: >-
  If you use this software, please cite it using the
  metadata from this file.
type: software
authors:
  - name: Natural History Museum
    city: London
    country: GB
    alias: NHM
    email: data@nhm.ac.uk
repository-code: 'https://github.com/NaturalHistoryMuseum/ckanext-statistics'
abstract: A CKAN extension for accessing instance statistics.
keywords:
  - ckan
  - ckanext
  - statistics
license: GPL-3.0-or-later
version: 4.0.1

GitHub Events

Total
  • Create event: 11
  • Issues event: 4
  • Release event: 1
  • Delete event: 5
  • Member event: 1
  • Issue comment event: 3
  • Push event: 35
  • Pull request event: 18
Last Year
  • Create event: 11
  • Issues event: 4
  • Release event: 1
  • Delete event: 5
  • Member event: 1
  • Issue comment event: 3
  • Push event: 35
  • Pull request event: 18

Committers

Last synced: almost 3 years ago

All Time
  • Total Commits: 138
  • Total Committers: 4
  • Avg Commits per committer: 34.5
  • Development Distribution Score (DDS): 0.507
Top Committers
Name Email Commits
Alice Butcher a****i@g****m 68
Josh Humphries j****s@n****k 44
benscott b****n@b****k 16
github-actions[bot] g****]@u****m 10
Committer Domains (Top 20 + Academic)

Packages

  • Total packages: 1
  • Total downloads:
    • pypi 395 last-month
  • Total dependent packages: 1
  • Total dependent repositories: 0
  • Total versions: 24
  • Total maintainers: 1
pypi.org: ckanext-statistics

A CKAN extension for accessing instance statistics.

  • Versions: 24
  • Dependent Packages: 1
  • Dependent Repositories: 0
  • Downloads: 395 Last month
Rankings
Dependent packages count: 2.9%
Downloads: 10.9%
Average: 14.8%
Dependent repos count: 30.6%
Maintainers (1)
Last synced: 7 months ago

Dependencies

setup.py pypi
  • requests *
  • tqdm >=4.55.1
.github/workflows/bump.yml actions
  • actions/checkout v3 composite
  • commitizen-tools/commitizen-action master composite
  • softprops/action-gh-release v1 composite
.github/workflows/main.yml actions
  • actions/checkout v3 composite
.github/workflows/pypi-publish.yml actions
  • actions/checkout v3 composite
  • actions/setup-python v3 composite
  • pypa/gh-action-pypi-publish release/v1 composite
docker/Dockerfile docker
  • naturalhistorymuseum/ckantest 0.2 build
docker-compose.yml docker
  • ckan/ckan-solr 2.9
  • elasticsearch 6.8.13
  • mongo 4.2
  • redis latest
docs/requirements.txt pypi
  • mkdocs *
  • mkdocs-gen-files *
  • mkdocs-include-markdown-plugin *
  • mkdocs-material *
  • mkdocs-section-index *
  • mkdocstrings *
pyproject.toml pypi
  • ckanext-ckanpackager ~=2.2.0
  • ckanext-versioned-datastore ~=4.1.0
  • ckantools >=0.3.0
  • importlib-resources *
  • requests *
  • tqdm >=4.55.1