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

Uploaded Source

Built Distribution

monasca_statsd-1.8.0-py2.py3-none-any.whl (17.0 kB view details)

Uploaded Python 2 Python 3

File details

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

File metadata

File hashes

Hashes for monasca-statsd-1.8.0.tar.gz
Algorithm Hash digest
SHA256 2626849aece1e63ad0e2b4b708859d1dad983fe79c0d1ee1911a8c6a54d413cd
MD5 19bd305f2d0f425b6b08e98a52b6c5f9
BLAKE2b-256 4e8fad3a7053e1e940adddb946c85f2a41ef8d2b40292f92fa8df96ed1b203b6

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for monasca_statsd-1.8.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 26e0aa677cdb04b52e7a01be16a3afd4f2291ef5a33a9e7ac02f30317a9a4e4c
MD5 c72f3ee962510aacd8893e0dd2e26658
BLAKE2b-256 b2649c61e8103d308caf53e9df61a96004b93c9998ef4f7d7c885ef2b224e707

See more details on using hashes here.

Provenance

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