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.

Source Distribution

flask-api-stats-0.5.tar.gz (6.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

flask_api_stats-0.5-py3-none-any.whl (20.7 kB view details)

Uploaded Python 3

File details

Details for the file flask-api-stats-0.5.tar.gz.

File metadata

  • Download URL: flask-api-stats-0.5.tar.gz
  • Upload date:
  • Size: 6.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.0.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.6.7

File hashes

Hashes for flask-api-stats-0.5.tar.gz
Algorithm Hash digest
SHA256 8a1ee9e05cfd5b0453f4d73100a773dbe57414bdf7b5f4ccab666bccce7f3fdb
MD5 706111c66ab2da1762fa9b31fc491225
BLAKE2b-256 43cb2c880cecf6f4905b6e2f8e1b4957660399bd987020121803979ab3a39352

See more details on using hashes here.

File details

Details for the file flask_api_stats-0.5-py3-none-any.whl.

File metadata

  • Download URL: flask_api_stats-0.5-py3-none-any.whl
  • Upload date:
  • Size: 20.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.0.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.6.7

File hashes

Hashes for flask_api_stats-0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 e65952262063ada54b82839bf20dffbd07d57bbb47ea19ec919d8e9a0abe926c
MD5 17e4a6a4e4358505888f11de8b8fc97c
BLAKE2b-256 69bd66e52760a6bf57668895254c131a1f8e0e27d2f33b437925fd7c42e02f97

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page