send timing and exception stats to riemann
Project description
Introductory blog post: http://www.spootnik.org/entries/2013/05/21_using-riemann-to-monitor-python-apps.html
This library is provided to allow timing and exception reporting of python functions using http://riemann.io.
Installing
Pip:
pip install riemann_wrapper
Pypi: https://pypi.python.org/pypi/riemann_wrapper
Manual:
python setup.py install
Usage
Provide a metric name and a bernhard client for timing:
import bernhard from riemann_wrapper import wrap_rieman, riemann_wrapper riemann = bernhard.Client() @wrap_riemann("cpu-intensive-task", client=riemann) def do_something_cpu_intensive(): # [...]
Call options:
The following keyword args may be passed to wrap_riemann:
client: instance of bernhard.Client to send events with
tags: tags to attach to riemann events
host: override hostname for the event
Alternately, a new wrapping function can be created by calling riemann_wrapper like-so:
import bernhard from riemann_wrapper import wrap_riemann, riemann_wrapper riemann = bernhard.Client() my_wrapper = riemann_wrapper(client=berhard.Client(), prefix="myapp.") @my_wrapper("cpu-intensive-task") def do_something_cpu_intensive(): # [...]
The following keyword args may be passed to riemann_wrapper:
client: instance of bernhard.Client to send events with
global_tags: tags present in all sent events
host: override hostname for all events
prefix: prepend given string to all event services
exception_state: state sent for exceptions. Default: 'warning'.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.