Skip to main content

Monasca statsd Python client

Project description

Openstack Monasca Statsd

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

Uploaded Source

Built Distribution

monasca_statsd-2.3.0-py3-none-any.whl (20.7 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: monasca-statsd-2.3.0.tar.gz
  • Upload date:
  • Size: 23.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.1 CPython/3.8.11

File hashes

Hashes for monasca-statsd-2.3.0.tar.gz
Algorithm Hash digest
SHA256 9d85787c5dc88230878c5650ddc6bd03d3ca6c749f35f6b39368ad68334f1e10
MD5 903397754a4d92579cd5bffc07c6f084
BLAKE2b-256 fa39320823320f9891b90707c0b7705bd7164d41017341c2d94d77a981431919

See more details on using hashes here.

File details

Details for the file monasca_statsd-2.3.0-py3-none-any.whl.

File metadata

  • Download URL: monasca_statsd-2.3.0-py3-none-any.whl
  • Upload date:
  • Size: 20.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.1 CPython/3.8.11

File hashes

Hashes for monasca_statsd-2.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 0c36126bf13990a5faffe1be39a4cf0d8c58b2bba419966f88df58606af85488
MD5 6e7ff9be0db06b56db195f4b2da9936a
BLAKE2b-256 3d2e2936d8b82e64c9887138529c3606766954aa8cd9829882a610aa8fb3324e

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