Skip to main content

Invenio module for collecting statistics.

Project description

https://img.shields.io/github/license/inveniosoftware/invenio-stats.svg https://github.com/inveniosoftware/invenio-stats/workflows/CI/badge.svg https://img.shields.io/coveralls/inveniosoftware/invenio-stats.svg https://img.shields.io/pypi/v/invenio-stats.svg

Invenio module for collecting statistics.

This module provides the components for statistical data processing and querying.

The most common statistics measure the occurence of events in an invenio application, e.g. file downloads, record views and others. Invenio-stats provides the tools to transform, register, compress and query those events. However, statistics can be fully customized and directly query the database.

The services it uses are:

  • RabbitMQ for buffering incoming events.

  • Elasticsearch or OpenSearch for aggregating and searching events.

Further documentation is available on: https://invenio-stats.readthedocs.io/

Changes

Version v6.1.2 (released 2026-03-04)

  • fix(aggregations): make queries backwards-compatible with non timezone aware indices

Version v6.1.1 (released 2026-03-03)

  • fix(queries): make queries backwards-compatible with non timezone aware indices

Version v6.1.0 (released 2026-01-29)

  • feat(config): add STATS_EVENTS_UTC_DATETIME_ENABLED flag Introduce STATS_EVENTS_UTC_DATETIME_ENABLED (default: False) to strip tzinfo from event timestamps at build time. Set to True to opt-in to timezone-aware UTC datetimes.

Version v6.0.0 (released 2026-01-29)

  • chore(setup): bump dependencies

  • chore(black): update formatting to >= 26.0

  • fix(chore): DeprecationWarning stdlib

  • fix: DeprecationWarning warn use warning

  • tests: extend support to Python 3.14

  • i18n:push translations

Version 5.1.1 (release 2025-06-09)

  • tests: fix issues with CI

  • translations: add untranslated strings and add translation workflow

Version 5.1.0 (release 2025-01-20)

  • aggregations: add yearly interval

Version 5.0.0 (release 2024-12-10)

  • tests: remove dependency to invenio-oauth2server

  • setup: bump major dependencies

Version 4.2.1 (release 2024-11-30)

  • setup: change to reusable workflows

  • setup: pin dependencies

Version v4.2.0 (released 2024-08-27)

  • processors: allow filtering out robots/machines

Version 4.1.0 (release 2024-08-14)

  • introduce a new config STATS_REGISTER_INDEX_TEMPLATES to be able to register events and aggregations as index templates (ensure backwards compatibility)

Version 4.0.2 (release 2024-03-04)

  • aggregations: consider updated_timestamp field optional (ensure backwards compatibility)

Version 4.0.1 (release 2023-10-09)

  • aggregations: ensure events are aggregated only once

Version 4.0.0 (release 2023-10-03)

  • introduce new field updated_timestamp` in the events and stats templates and mappings

  • improved calculation of aggregations skipping already aggregated events

  • changed refresh_interval from 1m to 5s

  • changed default events index name from daily to monthly

  • moved BookmarkAPI to a new module

Version 3.1.0 (release 2023-04-20)

  • add extension method for building and caching queries

Version 3.0.0 (release 2023-03-01)

  • Upgrade to invenio-search 2.x

  • Drop support for Elasticsearch 2, 5, and 6

  • Add support for OpenSearch 1 and 2

  • Drop support for Python 2.7 and 3.6

  • Remove function invenio_stats.utils:get_doctype

  • Fix validate_arguments for query classes

  • Add build_event_emitter function for creating an EventEmitter but not registering it as a signal handler

  • Add ext.get_event_emitter(name)` function for caching built EventEmitter objects per name

  • Replace elasticsearch-specific terminology

Version 2.0.0 (release 2023-02-23)

  • add opensearch2 compatibility

Version 1.0.0a18 (release 2020-09-01)

  • Fix isort arguments

  • Filter pytest deprecation warnings

  • Set default values for metrics instead of None, when no index found

Version 1.0.0a17 (release 2020-03-19)

  • Removes Python 2.7 support.

  • Centralizes Flask dependency via invenio-base.

Version 1.0.0a16 (release 2020-02-24)

  • bump celery dependency

  • pin Werkzeug version

Version 1.0.0a15 (release 2019-11-27)

  • Pin celery dependency

Version 1.0.0a14 (release 2019-11-27)

  • Fix get_bucket_size method

Version 1.0.0a13 (release 2019-11-08)

  • Bump invenio-queues

Version 1.0.0a12 (release 2019-11-08)

  • Fixes templates for ElasticSearch 7

  • Updates dependency of invenio-search

Version 1.0.0a11 (release 2019-10-02)

  • Initial public release.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

invenio_stats-6.1.2.tar.gz (39.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

invenio_stats-6.1.2-py2.py3-none-any.whl (54.5 kB view details)

Uploaded Python 2Python 3

File details

Details for the file invenio_stats-6.1.2.tar.gz.

File metadata

  • Download URL: invenio_stats-6.1.2.tar.gz
  • Upload date:
  • Size: 39.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for invenio_stats-6.1.2.tar.gz
Algorithm Hash digest
SHA256 56e57a2cc1bb785a1311a565491d18a0a1910fecdc9ef9e3796a02aa94cb17c6
MD5 62a520f573229d91ee82d267b29b569d
BLAKE2b-256 b42f96930b2abb517ca2fa219d471b8e6adff78cc2644add92d0fdca4c9d5da0

See more details on using hashes here.

File details

Details for the file invenio_stats-6.1.2-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for invenio_stats-6.1.2-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 6bce3158d41b42ee537acaee17ff775b97906bdc74b2a351f721fcf4519ca799
MD5 59068d4c63eb391037138eacbc810e0a
BLAKE2b-256 78c8ae872bf154492dac769ff7570245286bee1d5204b22a062cc34dcffa3f6d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page