Skip to main content

Build Status GitHub license

pawprint

pawprint allows you to quickly track events occurring in your application, and analyse them using pandas. For the full API, see the documentation. These are a work in progress.

Write data flexibly

tracker.write(event="server_booted")
tracker.write(event="logged_in", user_id="alice")
tracker.write(event="navigation", user_id="bob", metadata={"to": "dashboard"})
tracker.write(event="invoice", metadata={"details": {"amount": 1214, "from": "Ardbeg"}})
tracker.write(event="invoice", metadata={"details": {"amount": 123, "from": "Lagavulin"}})

Query data intuitively

Read the full dataset.

tracker.read()
    id                    timestamp   user_id           event                                            metadata  
0    1   2017-03-31 15:51:50.590018      None   server_booted                                                None
1    2   2017-03-31 15:51:50.599256     alice       logged_in                                                None
2    3   2017-03-31 15:51:50.610069       bob      navigation                                 {'to': 'dashboard'}
3    4   2017-03-31 15:51:50.620759      None         invoice     {'details': {'from': 'Ardbeg', 'amount': 1214}}
4    5   2017-03-31 15:51:50.629837      None         invoice   {'details': {'from': 'Lagavulin', 'amount': 123}}

List only events where the user was Alice.

tracker.read("event", user_id="alice")
        event
0   logged_in

Query unstructured data to find out who invoiced you and when.

tracker.read("timestamp", "metadata__details__from", event="invoice")
                     timestamp   json_field
0   2017-03-31 15:51:50.620759       Ardbeg
1   2017-03-31 15:51:50.629837    Lagavulin

Perform aggregates over time.

tracker.count("logged_in", resolution="week")
      datetime   count
0   2017-03-27       1

Aggregate JSON subfields.

tracker.sum(event="invoice", field="metadata__details__amount", resolution="year")
      datetime      sum
0   2017-01-01   1337.0

Documentation

For installation, dependencies, API details, and a quickstart, please RTFM !

Metadata

Release files for pawprint 2.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pawprint 2.1.1
File Size Uploaded Provenance
pawprint-2.1.1.tar.gz 11.5 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for pawprint 2.1.1
File Interpreter ABI Platform
pawprint-2.1.1-py3-none-any.whl Python 3 none any Details

Total release size: 23.8 kB

Release files / pawprint-2.1.1.tar.gz

Download URL pawprint-2.1.1.tar.gz
Size 11.5 kB
Tags Source
SHA-256 checksum
How to use checksums
a1b78333f7c3929382ee878e5ad3946aa9628c6bc9a17f55be07ce64e4f6c89c
BLAKE2b-256 checksum
How to use checksums
e271d85dd14f161592b6e41b5f35581828852fdbd4f79a18f752e9999d228b58
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/42.0.1.post20191125 requests-toolbelt/0.9.1 tqdm/4.40.2 CPython/3.7.3

Release files / pawprint-2.1.1-py3-none-any.whl

Download URL pawprint-2.1.1-py3-none-any.whl
Size 12.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
3dacd3ed69bc49d9427ea53bf948dfd99212216e1ef982473686952b4ff9cde3
BLAKE2b-256 checksum
How to use checksums
65ee467789a965b18235510f7e3a5f2e0f0a7d9e3873449b3e2122dedb4a5888
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/42.0.1.post20191125 requests-toolbelt/0.9.1 tqdm/4.40.2 CPython/3.7.3

Security for pawprint 2.1.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page