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

Uploaded Source

Built Distribution

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

Uploaded Python 3

File details

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

File metadata

  • Download URL: monasca-statsd-2.7.0.tar.gz
  • Upload date:
  • Size: 22.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.4

File hashes

Hashes for monasca-statsd-2.7.0.tar.gz
Algorithm Hash digest
SHA256 459390749466e13646985bb09b7046315a5f9dacc641f57b6928cee4f71b40db
MD5 3fd0356ce8032e0559a66762ca77ee80
BLAKE2b-256 365d1d4e4cae5f4440b54e94729924eb1e72bff2028b3f9b81ff324253b18e22

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for monasca_statsd-2.7.0-py3-none-any.whl
Algorithm Hash digest
SHA256 0f956fd46bc6a046415548cda5b747726dc36782100bc8d677383bf14cd4a054
MD5 ee884b207c3de12c47962b105d7ee6f2
BLAKE2b-256 32680c6669a6e174b7f1841dd5731f0dbf247b2d8c0d2b617f9c3b9a9c099b36

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