Skip to main content

A plugin for flask to obtain API statistics

Project description

flask-stats

Flask-stats is a simple plugin that allows you to have important information and statistics for the endpoints that you have. It collects all the data and then you can access it through endpoints live. This plug-in allows to monitor simple api without the necessity of any payment, such as new relic

Status: working progress

Instalation

pip install flask-api-stats

A Simple Example

from flask import Flask
from time import sleep
from flask_stats.flask_stats import Stats

app = Flask(__name__)
Stats(app)

@app.route('/')
def hello():
    sleep(10)
    return 'Hello World!'

if __name__ == '__main__':
    app.run()

Adding Stats(app) allows to register statistics of the API such as response time or configuration.

In any time, we can enter in /endpoints_stats to see duration of each endpoint

{
    duration: [
        {
            endpoint "/" : {
                avg: 10.009691333770752,
                count: 5,
                max: 10.010810375213623,
                min: 10.007489919662476,
                percentile_25: 10.007489919662476,
                percentile_50: 10.01064133644104,
                percentile_75: 10.010623693466187,
                percentile_90: 10.010810375213623
            }
        },
    ...
    ]
}

Other endpoint is /stats where we can see uptime, gc_stats and other configurations

{
gc_stats: {
    gc.get_debug: 0,
    gc.get_stats: {
        collected: 5455,
        collections: 130,
        uncollectable: 0
    ...
    },
    uptime: 1210.0311439037323,
    uptime_readable: {
        days: 0,
        hours: 0,
        minutes: 20,
        seconds: 10.0311439037323
    }
}

Contact

Please if you have any doubt or found any bug report and issue or send an email to fernando.bugni(a)gmail.com

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for flask-api-stats, version 0.5
Filename, size File type Python version Upload date Hashes
Filename, size flask_api_stats-0.5-py3-none-any.whl (20.7 kB) File type Wheel Python version py3 Upload date Hashes View hashes
Filename, size flask-api-stats-0.5.tar.gz (6.1 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page