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

Uploaded Source

Built Distribution

monasca_statsd-1.10.1-py2.py3-none-any.whl (15.0 kB view details)

Uploaded Python 2Python 3

File details

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

File metadata

File hashes

Hashes for monasca-statsd-1.10.1.tar.gz
Algorithm Hash digest
SHA256 32488a8304f3e7b8b3de10a5542a45db256e929a4c0e27bcc9d606ea66b33d47
MD5 c84d10acbddbdd7755e5d9a5203105d3
BLAKE2b-256 f841688118033ce28f57b30e8c3b92d2d24eca2c9b2a262ce90a93c28318d3c0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for monasca_statsd-1.10.1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 e13a598f765a4494ef2d2b42104f60d7574d342c3508e13c70cb74b5b3ba9cec
MD5 fc53b2ee1ef693e95653b6c1d7435215
BLAKE2b-256 62c0e678aa40bf74c63519469cdecf85eb451810aa66f44693efdc9ba359d49d

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