Skip to main content

Monasca statsd Python client

Project description

Team and repository tags

https://governance.openstack.org/tc/badges/monasca-statsd.svg

A Monasca-Statsd Python Client.

Quick Start Guide

First install the library with pip or easy_install:

# Install in system python ...
sudo pip install monasca-statsd

# .. or into a virtual env
pip install monasca-statsd

Then start instrumenting your code:

# Import the module.
import monascastatsd as mstatsd

# Create the connection
conn = mstatsd.Connection(host='localhost', port=8125)

# Create the client with optional dimensions
client = mstatsd.Client(connection=conn, dimensions={'env': 'test'})

NOTE: You can also create a client without specifying the connection and it will create the client
with the default connection information for the monasca-agent statsd processor daemon
which uses host='localhost' and port=8125.

client = mstatsd.Client(dimensions={'env': 'test'})

# Increment and decrement a counter.
counter = client.get_counter(name='page.views')

counter.increment()
counter += 3

counter.decrement()
counter -= 3

# Record a gauge 50% of the time.
gauge = client.get_gauge('gauge', dimensions={'env': 'test'})

gauge.send('metric', 123.4, sample_rate=0.5)

# Sample a histogram.
histogram = client.get_histogram('histogram', dimensions={'test': 'True'})

histogram.send('metric', 123.4, dimensions={'color': 'red'})

# Time a function call.
timer = client.get_timer()

@timer.timed('page.render')
def render_page():
    # Render things ...
    pass

# Time a block of code.
timer = client.get_timer()

with timer.time('t'):
    # Do stuff
    time.sleep(2)

# Add dimensions to any metric.
histogram = client.get_histogram('my_hist')
histogram.send('query.time', 10, dimensions = {'version': '1.0', 'environment': 'dev'})

Feedback

To suggest a feature, report a bug, or participate in the general discussion, head over to StoryBoard.

License

See LICENSE file. Code was originally forked from Datadog’s dogstatsd-python, hence the dual license.

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

monasca-statsd-1.12.0.tar.gz (20.1 kB view details)

Uploaded Source

Built Distribution

monasca_statsd-1.12.0-py2.py3-none-any.whl (20.5 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file monasca-statsd-1.12.0.tar.gz.

File metadata

  • Download URL: monasca-statsd-1.12.0.tar.gz
  • Upload date:
  • Size: 20.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.35.0 CPython/3.5.2

File hashes

Hashes for monasca-statsd-1.12.0.tar.gz
Algorithm Hash digest
SHA256 675487626e7abf5a02a942ebd6b6c009bdc9bae7294d3110c8f4b10f3661667f
MD5 d51d5c8726d1543827bb1c31e9bf1ab4
BLAKE2b-256 8215613c15bdf7e2323dc70e3bfb632f253aec4e7dac40999573cb051bbdc240

See more details on using hashes here.

File details

Details for the file monasca_statsd-1.12.0-py2.py3-none-any.whl.

File metadata

  • Download URL: monasca_statsd-1.12.0-py2.py3-none-any.whl
  • Upload date:
  • Size: 20.5 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.35.0 CPython/3.5.2

File hashes

Hashes for monasca_statsd-1.12.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 7777aa391d4a5dbf27951cdf9b2faa1f03587b3118c5f2df1746b7403c262b4a
MD5 bbf174a8d2067d0e16688c4d3af381c0
BLAKE2b-256 a0c3e50cea512570aea2372989bdefaec740a2a3f4fd68794ad7aefda3f1bd96

See more details on using hashes here.

Supported by

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