Performance metrics for Pyramid using StatsD
Performance metrics for Pyramid using StatsD. The project aims at providing ways to instrument a Pyramid application in the least intrusive way.
- PyPI: https://pypi.python.org/pypi/pyramid_metrics
- Bitbucket: https://bitbucket.org/Ludia/pyramid_metrics
Install using setuptools, e.g. (within a virtualenv):
$ pip install pyramid_metrics
Once pyramid_metrics is installed, you must use the config.include mechanism to include it into your Pyramid project’s configuration. In your Pyramid project’s __init__.py:
config = Configurator(.....) config.include('pyramid_metrics')
Alternately you can use the pyramid.includes configuration value in your .ini file:
[app:myapp] pyramid.includes = pyramid_metrics
Pyramid_metrics configuration (values are defaults):
[app:myapp] metrics.host = localhost metrics.port = 8125 metrics.prefix = application.stage metrics.route_performance = true
- Collection utility as a request method
- Ability to send metrics per Pyramid route
- Simple time marker mechanism
- Simple counter
- Full StatsD metric types
- Extensions for automatic metrology (SQLAlchemy, MongoDB, Requests…)
- Whitelist/blacklist of metrics
- Time allocation per subsystem (using the time marker mechanism)
- The general error policy is: always failsafe. Pyramid_metrics should NEVER break your application.
- The DNS resolution is done during configuration to avoid recurring latencies.