Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
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: 14 days 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 (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2023-05-01T20:30:48.000Z (over 1 year ago)
- Last Synced: 2024-05-02T01:54:43.997Z (6 months ago)
- Topics: flask, prometheus, pypi, python
- Language: Python
- Size: 8.79 KB
- Stars: 7
- Watchers: 2
- 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 monitorapp = 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 monitorapp = 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