Skip to main content

An asyncio-based client for sending metrics to StatsD with support of DogStatsD extension

Project description

aiodogstatsd

Build Status codecov PyPI PyPI - Downloads GitHub

An asyncio-based client for sending metrics to StatsD with support of DogStatsD extension.

Library fully tested with statsd_exporter and supports gauge, counter, histogram, distribution and timing types.

Installation

Just type:

$ pip install aiodogstatsd

...or if you're interested in integration with AIOHTTP or Sanic frameworks specify corresponding extras:

$ pip install aiodogstatsd[aiohttp,sanic]

Usage

You can simply initialize client to send any metric you want:

import asyncio

import aiodogstatsd


async def main():
    client = aiodogstatsd.Client()
    await client.connect()

    client.increment("users.online")

    await client.close()


loop = asyncio.get_event_loop()
loop.run_until_complete(main())

...or you can also use client as a context manager:

import asyncio

import aiodogstatsd


async def main():
    async with aiodogstatsd.Client() as client:
      client.increment("users.online")


loop = asyncio.get_event_loop()
loop.run_until_complete(main())

Look at examples/ to find more examples of library usage, e.g. integration with AIOHTTP or Sanic frameworks.

Contributing

To work on the aiodogstatsd codebase, you'll want to clone the project locally and install the required dependencies via poetry:

$ git clone git@github.com:Gr1N/aiodogstatsd.git
$ make install

To run tests and linters use command below:

$ make lint && make test

If you want to run only tests or linters you can explicitly specify which test environment you want to run, e.g.:

$ make lint-black

License

aiodogstatsd is licensed under the MIT license. See the license file for details.

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

aiodogstatsd-0.9.0.tar.gz (8.8 kB view details)

Uploaded Source

Built Distribution

aiodogstatsd-0.9.0-py3-none-any.whl (9.6 kB view details)

Uploaded Python 3

File details

Details for the file aiodogstatsd-0.9.0.tar.gz.

File metadata

  • Download URL: aiodogstatsd-0.9.0.tar.gz
  • Upload date:
  • Size: 8.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.0.0b8 CPython/3.8.0 Linux/4.15.0-20-generic

File hashes

Hashes for aiodogstatsd-0.9.0.tar.gz
Algorithm Hash digest
SHA256 535defa76cb586dcac75166b81a4835a43fb58d8007e0afe7652ccf12c7df433
MD5 525764872c1a7dd6cce6f62e37ae97c0
BLAKE2b-256 9dad1886f3a219770872c3a626acb3852d1ff2474d7aaccffb4c619991364f1d

See more details on using hashes here.

File details

Details for the file aiodogstatsd-0.9.0-py3-none-any.whl.

File metadata

  • Download URL: aiodogstatsd-0.9.0-py3-none-any.whl
  • Upload date:
  • Size: 9.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.0.0b8 CPython/3.8.0 Linux/4.15.0-20-generic

File hashes

Hashes for aiodogstatsd-0.9.0-py3-none-any.whl
Algorithm Hash digest
SHA256 fbe16f3ac2d42043a707ced2050faf0a0596abf470806aa2a9f72b9b1b619de4
MD5 d68e898f03d43ee7a44e6bb8e8387d5e
BLAKE2b-256 8ada6d1c2999b31444af8b315cad6e39a31296948ae1062f728a2ae25d5162f8

See more details on using hashes here.

Supported by

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