Skip to main content

Profile a Tornado application via REST

Project description

https://travis-ci.org/makearl/tornado-profile.svg?branch=master

Add this library to your routes to add a REST API for profiling your Tornado application.

Usage

import tornado
from tornado_profile import TornadoProfiler

port = 8888
routes = []

routes += TornadoProfiler().get_routes()
app = tornado.web.Application(routes)
app.listen(port)
tornado.ioloop.IOLoop.current().start()

# Create with optional route prefix and base class for handlers
routes += TornadoProfiler(prefix="", handler_base_class=custom_base_class).get_routes()

Installation

$ pip install tornado-profile

API

# Start the profiler
POST /profiler

# Stop the profiler
DELETE /profiler

# Get the profiler status
GET /profiler
{"running": true/false}

# Get the profiler statistics
GET /profiler/stats
{
    "statistics": [
        {
            "path": ...,
            "line": ...,
            "func_name": ...,
            "num_calls": ...,
            "total_time": ...,
            "total_time_per_call": ...,
            "cum_time": ...,
            "cum_time_per_call": ...
        }
        ...
    ]
}

# Get the profiler statistics with optional query parameters
GET /profiler/stats?count=1&sort=num_calls&strip_dirs=false

# Clear the profiler statistics
DELETE /profiler/stats

Tools

Command Line: https://github.com/dimrozakis/tornado-profile-client

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

tornado_profile-1.2.0-py2.7.egg (7.7 kB view details)

Uploaded Source

tornado_profile-1.2.0-py2-none-any.whl (5.6 kB view details)

Uploaded Python 2

File details

Details for the file tornado_profile-1.2.0-py2.7.egg.

File metadata

File hashes

Hashes for tornado_profile-1.2.0-py2.7.egg
Algorithm Hash digest
SHA256 3459e2b034064a3652edcd3c6cd7fe6e3cdc6998ec61eebf0d940b600cdd7fb6
MD5 675bb4c695b3fe8f6716756c0dad4798
BLAKE2b-256 a067209b18da417ee45a7053c4bc5b305a4d8ccdb7197da5e6abbafaf04bda81

See more details on using hashes here.

File details

Details for the file tornado_profile-1.2.0-py2-none-any.whl.

File metadata

File hashes

Hashes for tornado_profile-1.2.0-py2-none-any.whl
Algorithm Hash digest
SHA256 1051e3a792dc5845a1029ab23321ce53aedcc06a74f75af406670860fd6bf05e
MD5 f26ce303ffc61fdc595d25ef74700277
BLAKE2b-256 9659e61a6b5fef83c17fab008e56ad7fb6dbe46bac85e3bbd8bf0fece33cb03b

See more details on using hashes here.

Supported by

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