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.8.0.tar.gz (8.5 kB view details)

Uploaded Source

Built Distribution

aiodogstatsd-0.8.0-py3-none-any.whl (9.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: aiodogstatsd-0.8.0.tar.gz
  • Upload date:
  • Size: 8.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/0.12.17 CPython/3.7.5 Linux/4.15.0-20-generic

File hashes

Hashes for aiodogstatsd-0.8.0.tar.gz
Algorithm Hash digest
SHA256 1186d0d0d775b7d80fc0d14d6270ae1ac7d20495a440945332297d8a191fbd08
MD5 b8e883bbabc73b93d31d6dd96ffe8121
BLAKE2b-256 e581685cfe4c576280cac451c73ee1448d05521768f0d5c1a83d90b4e4af65d2

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aiodogstatsd-0.8.0-py3-none-any.whl
  • Upload date:
  • Size: 9.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/0.12.17 CPython/3.7.5 Linux/4.15.0-20-generic

File hashes

Hashes for aiodogstatsd-0.8.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ede7e1ba0340737ec0d85a3152b7f8d5a7f8248d693251976a932215489d7613
MD5 710e49ea18b66cb2de7643009bc0ac6b
BLAKE2b-256 18e2e5820010457bf034245369bce9072a3dc90f3537ba0d92eb1871c42fa05a

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