WSGI middleware for line-by-line profiling
Project description
wsgi_lineprof is a WSGI middleware for line-by-line profiling.
wsgi_lineprof has the following features:
WSGI middleware: It can be integrated with any WSGI-compatible applications and frameworks including Django, Pyramid, Flask, Bottle, and more.
Easily pluggable: All configurations for profiling in one place. Users don’t need to make any changes to their application.
wsgi_lineprof is not recommended to be used in production environment because of the overhead of profiling.
At a Glance
You can use wsgi_lineprof as a WSGI middleware of existing applications.
$ pip install wsgi_lineprof
Apply wsgi_lineprof to the existing WSGI web application:
from wsgi_lineprof.middleware import LineProfilerMiddleware
app = LineProfilerMiddleware(app)
Start the web application and access the application. wsgi_lineprof writes results to stdout every time an HTTP request is processed by default. You can see the output like this in your console:
... (snip) ... File: ./app.py Name: index Total time: 1.00518 [sec] Line Hits Time Code =================================== 9 @app.route('/') 10 def index(): 11 1 1005175 time.sleep(1) 12 1 4 return "Hello world!!" ... (snip) ...
Also, you can check the result on your web browser by accessing the special endpoint /wsgi_lineprof/.
Please check the documentation for more details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Hashes for wsgi_lineprof-0.12.0-cp38-cp38-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9aae4ac663e31703de5e071b476119a7a870ebc4d24c3f577fa68304a17fdc21 |
|
MD5 | e895657ef9d17288a344fd51e2c02e9a |
|
BLAKE2b-256 | eb191954a0c416f797a4a3afd19f73b895bfdda8e7dcdb1fb956b52aa14c54e6 |
Hashes for wsgi_lineprof-0.12.0-cp38-cp38-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d7a7f9d011b057c13dff99dab2189ec2c885f8f522e9900af6981cf2bb31c80d |
|
MD5 | 3cc2fbd16937ff4c19812dd99886590d |
|
BLAKE2b-256 | cb4040d08868fb9dc25d4cf50f0fd1d5dedfd8b2b48c85434ad8fe9d9ac65d10 |
Hashes for wsgi_lineprof-0.12.0-cp38-cp38-manylinux2010_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 755af0b684dbdb3cbb21c29272ac870cc4b926466c4f23a6a893917a963dabeb |
|
MD5 | 45323e5998f49f5a12597b7e0dc3abc9 |
|
BLAKE2b-256 | 7840273d55479607cf38c99c566f15069c09938a9d44e6bc94e823a3bdde2a77 |
Hashes for wsgi_lineprof-0.12.0-cp38-cp38-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f662a373cf91cffcf143d47dc21dd2efcbcc5e47a560c2a9bd598f9ca14658b5 |
|
MD5 | bb5d936d0975dbbfa68dd52765656ff0 |
|
BLAKE2b-256 | 52430b48af8c202bfd414926038cd8fde151806a51921fc9dc76af3c0b96f933 |
Hashes for wsgi_lineprof-0.12.0-cp38-cp38-manylinux1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4e68be2772a78b83bf04a572081b1647a6ffd0c9ebb04e5c9ef7eff1037a9757 |
|
MD5 | fdce63b540740c0ad129b781062dfc1f |
|
BLAKE2b-256 | 7e26b7548ba582da24b55143049244635d307c36c437a708f462bc0c07da9a9b |
Hashes for wsgi_lineprof-0.12.0-cp38-cp38-macosx_10_13_x86_64.macosx_10_15_x86_64.macosx_10_14_x86_64.macosx_10_12_x86_64.macosx_10_11_x86_64.macosx_10_10_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 31a579591895b64cb8811b93747f8a6d634013b4fc1be4fa893c32d9cae0ba7f |
|
MD5 | 8bef77c2836995bc3446b268dfda9eb3 |
|
BLAKE2b-256 | 4c45aee330562c3630013477f37f8e7cfab496a7b6abbd758f2c8475cb3aaf5e |
Hashes for wsgi_lineprof-0.12.0-cp37-cp37m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 87f43f749ef043341ff22d2ca99169a58c70322efd13bc2b945e90fc22bb987a |
|
MD5 | 2b9757ce14b5f7dc76c56fec6a006299 |
|
BLAKE2b-256 | 6fb3dc2b4a818cd206ed3f421d96c37d2c6405f19edbbb3a8bfd5141de9a0314 |
Hashes for wsgi_lineprof-0.12.0-cp37-cp37m-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8cf2bbc2689d4f97fd05d193e8d62555356222336be2be11c2b96f186f79d9cb |
|
MD5 | f3d44d7f0782df93eab4582c239aaf52 |
|
BLAKE2b-256 | ea2464cd4854eb87d0137e7652f8b96cf79ce37d6fd7aefd7090ca4d1434b4f4 |
Hashes for wsgi_lineprof-0.12.0-cp37-cp37m-manylinux2010_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e147791887634dbeb64179ba923585e69ca42c222ead60895cacdb2360ca818f |
|
MD5 | 97ed62ec253dc2634e5a08d9d03b367b |
|
BLAKE2b-256 | 446cbdd30d11d867096d8d022c5451a43da31607d6a87c5b2412ead26d5d8f0e |
Hashes for wsgi_lineprof-0.12.0-cp37-cp37m-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2e8070ec2999d369a06ab2ae0c48c182c658301aee6509716ea626521c797066 |
|
MD5 | eefe4647dc2d30675be3510ff30d5a08 |
|
BLAKE2b-256 | ee06481527e642452baccc1c1d0ce5e2762ecfcd517961a8dbcaede931a46eba |
Hashes for wsgi_lineprof-0.12.0-cp37-cp37m-manylinux1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 981d49fec54dda54ee7efba7d23cbc7f05b2a5ba08bd95cfe0ac30dbb0910084 |
|
MD5 | f0068af8b09217797adb7060bc7e7a84 |
|
BLAKE2b-256 | ec93b46ba5514a0302f9dead9780720b68ba1a1a1cd0548bf391a2aee4e38fd3 |
Hashes for wsgi_lineprof-0.12.0-cp37-cp37m-macosx_10_13_x86_64.macosx_10_15_x86_64.macosx_10_14_x86_64.macosx_10_12_x86_64.macosx_10_11_x86_64.macosx_10_10_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 75879b1b8ebc66cc6a611bbe3e05054bb13580ac57fb523cd43c7fa95211a703 |
|
MD5 | 66fc2c1c5e4586f2f3a74b2e89e4525d |
|
BLAKE2b-256 | 186874aea438fa3681fa988a5e9fc3f262c5fced27e37117af3e8aef2f8af022 |
Hashes for wsgi_lineprof-0.12.0-cp36-cp36m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 303f5c29e17d97937d0c91f8f5194ad6d076e3056c526a9501ae486d59bab491 |
|
MD5 | f6641e485d333007fab01a41e71a90cb |
|
BLAKE2b-256 | a21bf97ce036ef35ad043518f9186dc80e4d280ce58158fcb07f23a77a694bdf |
Hashes for wsgi_lineprof-0.12.0-cp36-cp36m-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6b35f70cdb7d66b6aa83189d5de4f22c79e63dbde180c36cbeef0d0a1c460ab7 |
|
MD5 | 87a58d3a703a5a94b46f7547615e86b5 |
|
BLAKE2b-256 | e2b0dfb7300c4badd719c6c3942b2e5f5e7889f227c5632b98c1040cf208f263 |
Hashes for wsgi_lineprof-0.12.0-cp36-cp36m-manylinux2010_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7894940db4e193ab70b5ee903ab632e21fb84446934d0efbe29bf361c0f52dcc |
|
MD5 | 12a8de15c78e930d7f286783f6ea184d |
|
BLAKE2b-256 | 40a83fdbb8d179920572344c99a540cc65df4679c002dcd47900c0f38265f0c8 |
Hashes for wsgi_lineprof-0.12.0-cp36-cp36m-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 057a986a6d8bf384ce5a5fbce74360e80b198eba4bd4b59eea9363a1541fc03a |
|
MD5 | 5e37319202f433cc8f1e70fe87f52369 |
|
BLAKE2b-256 | 198f2e2fb8397057c630dde49de8ca41c04f8dc41f574b703adf216c34ba6279 |
Hashes for wsgi_lineprof-0.12.0-cp36-cp36m-manylinux1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 61f242cb31f74b81a597950eb92c38008a3b8cb9add1a932b6bd1a5a8bddefae |
|
MD5 | 65a610595e5da18f5724f9020c597255 |
|
BLAKE2b-256 | 81ce0d1de5fa1a6848a839d008f7e12d23a64173cbadc9e84ac67a8c91690730 |
Hashes for wsgi_lineprof-0.12.0-cp36-cp36m-macosx_10_13_x86_64.macosx_10_15_x86_64.macosx_10_14_x86_64.macosx_10_12_x86_64.macosx_10_11_x86_64.macosx_10_10_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9e1d32260ee7104311b7b4a8227f4ebfd6871fae0f7e08af3544756aef006b8d |
|
MD5 | da130e71d11011b83fd17dd5fd771b8a |
|
BLAKE2b-256 | 9a24e0116b61e779b4d5add5b0514e726db64495aa35cc3a7dfe2d79439964bf |
Hashes for wsgi_lineprof-0.12.0-cp35-cp35m-manylinux2010_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ee881905cf259be266dde5325b3f885d1696d2181f2affb248f06cdead805dc9 |
|
MD5 | d9e96a7ce0e4edbf960d40bdf36f8a62 |
|
BLAKE2b-256 | 5a8d444068660ff4ff59692cea6386ff811bda75d7f67c301c7e4e51217e381e |
Hashes for wsgi_lineprof-0.12.0-cp35-cp35m-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a4d6a40670168eb3afdd4c150d3e30b90081beeff84965874f645679c79eda4e |
|
MD5 | a199b5df07924d5ea32026b607804f1a |
|
BLAKE2b-256 | f29a4cd01ac5fffcbbd5f12f3372763d152a1163ae1afa604eb1c54a8868ed9b |
Hashes for wsgi_lineprof-0.12.0-cp35-cp35m-manylinux1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7badf18ec9310bd59c4f15c13e5517284e888c4fab3f4115ad45b0dbb9b2dc11 |
|
MD5 | 54dd73f5e27c7144887690f40f8ab5d2 |
|
BLAKE2b-256 | 09510f71612c0d10f02d36723c08a216928aa5be6acab885167340eaaae7e123 |
Hashes for wsgi_lineprof-0.12.0-cp35-cp35m-macosx_10_13_x86_64.macosx_10_15_x86_64.macosx_10_14_x86_64.macosx_10_12_x86_64.macosx_10_11_x86_64.macosx_10_10_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b4b46704023be5e433caf6f72aa7c25bb3a2081cfb84961560862c021a3675b8 |
|
MD5 | a04dcc52b10cb8780351ea2ab04c6da6 |
|
BLAKE2b-256 | 75c27dc53bb6d51242a791f7a778e1bdd277f9b994bb4d1e9699685e863eaca4 |
Hashes for wsgi_lineprof-0.12.0-cp34-cp34m-manylinux2010_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6ab9998080536e8ea31f3a099a87958fa960a09ec857603e6fe508ca2f73c377 |
|
MD5 | e11e07c6d90e36e6b07dc1fc9322b007 |
|
BLAKE2b-256 | 2ebaa80ec8db4310fef12d61101479b1c9a6164d8738e1b32b0ed1ac6601a308 |
Hashes for wsgi_lineprof-0.12.0-cp34-cp34m-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2cfe168a2fddef9f5ca9201a6abc40129fecff3983e41fb60a7f87441f2c76e9 |
|
MD5 | b64dcea299e8cbae0100629f9489a4ed |
|
BLAKE2b-256 | d4a48452589ff5a9a8ba5b625a6875d8085cf462a908e22cdc258a7f40492832 |
Hashes for wsgi_lineprof-0.12.0-cp34-cp34m-manylinux1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6231ff06992847f410254954d5bf406231a9cc905dd2b38fbc71ddf3d43eb99e |
|
MD5 | cdab905e3abf8426f1c6e56810464514 |
|
BLAKE2b-256 | 97f1e15352e5fefe47f4a00ba8a9e02f6d148ab970dde35e798efbcdc74e8a89 |
Hashes for wsgi_lineprof-0.12.0-cp27-cp27mu-manylinux2010_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c8250b685160cfffbe99fd95ceb45d351cb3a9da1d67c4fdaa547a8003d92a7c |
|
MD5 | ef9ff85bc5c0e7d9654dfbbe3032e5df |
|
BLAKE2b-256 | 72eaf5a11eaa564d39c6791718c71a36b03f53c12c9b3d6977f25df62b0ce6de |
Hashes for wsgi_lineprof-0.12.0-cp27-cp27mu-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 13d0a5a0e1233f4f799ebdbbac7af5cae63f44e48cfda4f68e4b63dec3655eaa |
|
MD5 | 336f338c1aa91d5cfe91cd3e69c19985 |
|
BLAKE2b-256 | 46e560558ec66ca562e2a7f05775e2ffab36919d1756255907eea256429567b3 |
Hashes for wsgi_lineprof-0.12.0-cp27-cp27mu-manylinux1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 05acf87c3a590509bb21a3b69f805abdcf4901be88ccfcf5c43d13b06a4ac2e0 |
|
MD5 | 987c80a204729ae8b6741ae07b7bc503 |
|
BLAKE2b-256 | f781f9168b33bff0a0ce16d4027bf53e8889dedb380e07f658a9fc0eb13e9c75 |
Hashes for wsgi_lineprof-0.12.0-cp27-cp27m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c4589299d505e8b164c4f530b0492e55e40d29993ee87fdaef30303b9426021b |
|
MD5 | d2b515fc629dfb3c7dfc5cef98cb1454 |
|
BLAKE2b-256 | 417c6b2a1febbd2403ca5a7047d72cee011ddb6647bbbe514dbea1c880fdcc84 |
Hashes for wsgi_lineprof-0.12.0-cp27-cp27m-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4dba87809ad94912655a8708200e191de54598ffb4c0886c0f9f061191e5e420 |
|
MD5 | f9b6cacd038c2d027b69e6df6b61c5ed |
|
BLAKE2b-256 | 2cdd20485cf284561a5e3b6cf1fbd0f8e78412948ed3eb965c4af49b0f57be78 |
Hashes for wsgi_lineprof-0.12.0-cp27-cp27m-manylinux2010_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0e95de7d2d5c63b415a11159368432031050ee05378cfb7f7a48ccc10d6d28ba |
|
MD5 | 4de5267b559dde94f4fa1e452d40ba37 |
|
BLAKE2b-256 | 6ef8bd142d0fbef6788d6f1ef0312d2f98f82079c1f0698ee26f25e814f6f9db |
Hashes for wsgi_lineprof-0.12.0-cp27-cp27m-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b19f85880cb43ff187ca9ede6139e2da444ed540b22c1dbdba91514ccdcbe1a2 |
|
MD5 | cb1050ebbf62696b1510e23ec971300a |
|
BLAKE2b-256 | 31d0b53627a8128e3fd99a4acd4328f0453a320ec05738f4670c4bd7a7bb49b6 |
Hashes for wsgi_lineprof-0.12.0-cp27-cp27m-manylinux1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2c0427f85e85c79be0c090f869b3237737c31cacb2d5a8a844d7b09f2d2d5a48 |
|
MD5 | 3243465179ff1c52b4896b1f8aeae739 |
|
BLAKE2b-256 | df7e21c5d37eb202a7c2419e07bfff04af955271e75a2a8e633a24d4f447dbe8 |
Hashes for wsgi_lineprof-0.12.0-cp27-cp27m-macosx_10_14_x86_64.macosx_10_15_x86_64.macosx_10_13_x86_64.macosx_10_12_x86_64.macosx_10_11_x86_64.macosx_10_10_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 95ab812265765adff053aecda6c5e578ae24c983b3abeab7031ed3375112319b |
|
MD5 | 1ec20ed11c0c94ae3fca87f3e96af1ae |
|
BLAKE2b-256 | ab281b2129d7e5b1900d60d30fd9c53bd31652c6afee80842a64ee3e020cd7f3 |
Hashes for wsgi_lineprof-0.12.0-cp27-cp27m-macosx_10_13_x86_64.macosx_10_15_x86_64.macosx_10_14_x86_64.macosx_10_12_x86_64.macosx_10_11_x86_64.macosx_10_10_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 94c0146a0fcfdb27fc371f927c9bcd6325b1da10116b4419c8f26a89cb7680f7 |
|
MD5 | f8bd222556f1742d1799e8bbfaa82bf0 |
|
BLAKE2b-256 | 32fee2d726228aee712ed79a35a6a3bfe52b61537ff32a046503e7afb2f8ce0f |