Skip to main content

Minimal and smart pusher of samples to InfluxDB for asyncio programs

Project description

Latest PyPI version

Minimal and smart pusher of samples to InfluxDB for asyncio programs

Usage

  1. Create a InfluxDbPusher object

  2. Call it to push samples

  3. InfluxDbPusher will try to do intelligent aggregation of samples in the background to minimise the number of HTTP request to the InfluxDb server.

Example:

import asyncio
import logging
from influxdbpusher import InfluxDbPusher


async def test():
    logging.basicConfig(level=logging.DEBUG)
    influx = InfluxDbPusher("http://influxdb:8086", "playground")
    while True:
        for dummy in range(10):
            await asyncio.sleep(0.02)
            influx("test", dummy, {"foo": "bar"})
            influx("measurement1",
                   {"fieldname1": 'hello "world"', "value": 2.0},
                   {"foo": "bar"})
        await asyncio.sleep(5)
    await influx.close()


if __name__ == '__main__':
    asyncio.get_event_loop().run_until_complete(test())

Installation

pip install influxdbpusher

Requirements

Python >= 3.5

Compatibility

Licence

MIT License

Copyright (c) 2017, Gambit Research

Authors

influxdbpusher was written by Gustavo Carneiro.

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

influxdbpusher-0.1.0.tar.gz (3.8 kB view hashes)

Uploaded Source

Built Distribution

influxdbpusher-0.1.0-py3-none-any.whl (6.0 kB view hashes)

Uploaded Python 3

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