Skip to content

Add prometheus metrics to your Flask application.

License

Notifications You must be signed in to change notification settings

CandisIO/flask-prom

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Flask-Prom

This will allow you to easily add Prometheus metrics to your Flask applications.

This extension instruments every flask route and exports the following metrics:

  • Histogram: <myapp_flask_request_latency_seconds> {'endpoint', 'method'}
  • Summary: <myapp_flask_request_count> {'endpoint','method','http_status'}

Install

pip install flask_prom

Usage

1. WSGI Add-On (Same Port)

For serving Prometheus metrics on the same port as your Flask application.

from flask import Flask
from flask_prom import monitor

app = Flask("myapp")

@app.route('/')
def hello():
    return 'Hello'

app.wsgi_app = monitor(app, path="/metrics")
app.run()

Then visit localhost:8000/metrics to see your metrics. They are served from the same port as your application!

2. HTTP Server (Different Port)

For creating a separate HTTP server to serve prometheus metrics.

from flask import Flask
from flask_prom import monitor

app = Flask("myapp")

@app.route('/')
def hello():
    return 'Hello'

monitor(app, path="/metrics", http_server=True, port=9090, addr="127.0.0.1")
app.run()

Then visit localhost:9090/metrics to see your metrics.

Credits

This python library was forked from https://github.com/sbarratt/flask-prometheus, since it was no longer being maintained.

License

BSD-3

TODO

  • automatic release to GitHub/PyPi on new tag

About

Add prometheus metrics to your Flask application.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%