Skip to content

Commit

Permalink
Update README
Browse files Browse the repository at this point in the history
  • Loading branch information
gi0baro committed Apr 19, 2023
1 parent 7123747 commit dd4b8b1
Showing 1 changed file with 51 additions and 0 deletions.
51 changes: 51 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,54 @@
# Emmett-Prometheus

Emmett-Prometheus is an [Emmett framework](https://emmett.sh) extension integrating [prometheus](https://prometheus.io) client.

[![pip version](https://img.shields.io/pypi/v/emmett-prometheus.svg?style=flat)](https://pypi.python.org/pypi/emmett-prometheus)

## Installation

You can install Emmett-Prometheus using pip:

pip install emmett-prometheus

And add it to your Emmett application:

```python
from emmett_prometheus import Prometheus

app.use_extension(Prometheus)
```

## Configuration

Here is the complete list of parameters of the extension configuration:

| param | default | description |
| --- | --- | --- |
| auto\_load | `True` | Automatically inject extension on routes and expose metrics |
| enable\_http\_metrics | `True` | Enable metrics collection on HTTP routes |
| enable\_ws\_metrics | `True` | Enable metrics collection on Websocket routes |
| enable\_sys\_metrics | `False` | Enable default Prometheus client system metrics collection |
| metrics\_route\_path | /metrics | Path for metrics route |
| metrics\_route\_hostname | | Hostname for metrics route |

You also have some additional customisations available (here we show the defaults):

```python
app.config.Prometheus.http_histogram_statuses = [200, 201]
app.config.Prometheus.http_histogram_exclude_methods = ["OPTIONS"]
app.config.Prometheus.http_histogram_buckets = [
5, 35, 100, 200, 500, 1000, "INF"
]
app.config.Prometheus.exclude_routes = []
app.config.Prometheus.metrics_names={
"http_counter": "emmett_request_count",
"http_histogram": "emmett_request_latency",
"ws_gauge": "emmett_websocket_gauge",
"ws_recv_counter": "emmett_websocket_messages_recv_count",
"ws_send_counter": "emmett_websocket_messages_send_count"
}
```

## License

Emmett-prometheus is released under BSD license.

0 comments on commit dd4b8b1

Please sign in to comment.