https://github.com/noqcks/flask-prom
Add prometheus metrics to your Flask application.
https://github.com/noqcks/flask-prom
flask prometheus pypi python
Last synced: about 1 year ago
JSON representation
Add prometheus metrics to your Flask application.
- Host: GitHub
- URL: https://github.com/noqcks/flask-prom
- Owner: noqcks
- License: bsd-3-clause
- Created: 2018-12-14T17:15:30.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2023-05-01T20:30:48.000Z (about 3 years ago)
- Last Synced: 2025-04-20T09:39:19.215Z (about 1 year ago)
- Topics: flask, prometheus, pypi, python
- Language: Python
- Size: 8.79 KB
- Stars: 7
- Watchers: 1
- Forks: 3
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# 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: ` {'endpoint', 'method'}`
- Summary: ` {'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](LICENSE)
# TODO
- automatic release to GitHub/PyPi on new tag