muffin-prometheus

Prometheus metrics exporter for Muffin framework


Keywords
prometheus-exporter, muffin, asyncio, trio, curio, asgi
License
MIT
Install
pip install muffin-prometheus==1.4.1

Documentation

Muffin-Prometheus

Muffin-Prometheus -- Prometheus metrics exporter for Muffin framework

Tests Status PYPI Version Python Versions
  • python >= 3.9

Muffin-prometheus should be installed using pip:

pip install muffin-prometheus

Initialize and setup the plugin:

import muffin
import muffin_prometheus

# Create Muffin Application
app = muffin.Application('example')

# Initialize the plugin
# As alternative: prometheus = muffin_prometheus.Plugin(app, **options)
prometheus = muffin_prometheus.Plugin()
prometheus.setup(app, group_paths=['/api'])
Name Default value Desctiption
metrics_url "/dev/prometheus" HTTP Path to export metrics for Prometheus
group_paths [] List of path's prefixes to group. A path which starts from the prefix will be grouped

You are able to provide the options when you are initiliazing the plugin:

prometheus.setup(app, metrics_url='/metrics', group_paths=['/views', '/api/v1', '/api/v2'])

Or setup it inside Muffin.Application config using the PROMETHEUS_ prefix:

PROMETHEUS_METRICS_URL = '/metrics'

PROMETHEUS_GROUP_PATHS = ['/views', '/api/v1', '/api/v2']

Muffin.Application configuration options are case insensitive

If you have any suggestions, bug reports or annoyances please report them to the issue tracker at https://github.com/klen/muffin-prometheus/issues

Development of the plugin happens at: https://github.com/klen/muffin-prometheus

  • klen (Kirill Klenov)

Licensed under a MIT license.