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

Uploaded Source

Built Distribution

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

Uploaded Python 3

File details

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

File metadata

  • Download URL: aiodogstatsd-0.10.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.10.0.tar.gz
Algorithm Hash digest
SHA256 dc0963ed89cdb1b1198994ae66f51d29e5ee50b4a9fd7f65b1414c3c99db89fe
MD5 01f65be3e3290236b0eba101c96c658c
BLAKE2b-256 c659af55da5b1e4ddce98969c023766de8f949f825bca9d97fe94978c3967b7e

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aiodogstatsd-0.10.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.10.0-py3-none-any.whl
Algorithm Hash digest
SHA256 95305dcc7511544e0181be714d640c624eec07a1d00882e5d5b3744202deb49b
MD5 819dd1a12adca919073adfec248031f5
BLAKE2b-256 b9a777f4bd16c865a73940c589fc1703b2236fbf1453446448f1b857bc0d6461

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