Skip to main content

Monasca statsd Python client

Project description

Team and repository tags
========================

[![Team and repository tags](https://governance.openstack.org/badges/monasca-statsd.svg)](https://governance.openstack.org/reference/tags/index.html)

<!-- Change things from this point on -->

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'})
```
Repository
-------------

The monasca-statsd code is located here:
[here](https://github.com/stackforge/monasca-statsd).

Feedback
--------

To suggest a feature, report a bug, or general discussion, head over
[here](https://bugs.launchpad.net/monasca).


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

Uploaded Source

Built Distribution

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

Uploaded Python 2Python 3

File details

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

File metadata

File hashes

Hashes for monasca-statsd-1.10.0.tar.gz
Algorithm Hash digest
SHA256 f2404f4e1e6c48ca33c23f4acbd872053fc3781621b981c4c5f76a07302a512a
MD5 7ef000ae81fae4cd6df3181bb3c8d140
BLAKE2b-256 be5e9f8ffe0043d86f51fff27c15dcaa15db2191197d35f10fa7bd5b3452fae7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for monasca_statsd-1.10.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 0f328536c2fe548a7187e8a32088615a430bda8bb5ef0876b4d9dbb9464ef317
MD5 fd17940212dd41ba4b3df1d3e9f414ca
BLAKE2b-256 ffcbf68d7df9f8eb83b78808f2504f1a879913208f5b4a07427c7cbfc9f330f8

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