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.15.0-cp310-cp310-win_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | dac7cb3bc6767cf3faf1acba48f20d09183f9faafc90cae309308d054f9846d6 |
|
MD5 | 90daebc77f63b029ea216233772d5ea7 |
|
BLAKE2b-256 | 8a9473398447878054c88b5e5f25398e5845fa4292ccfea613256ae201a55f75 |
Hashes for wsgi_lineprof-0.15.0-cp310-cp310-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a3fcb12e8bd393e84c8ce7560bd76084e5eb71228fb1250bdd74fb5cbcb27eb8 |
|
MD5 | 7c996edfcd3871fabd0f88edc481977a |
|
BLAKE2b-256 | 2c199004fad532c391a56c7a4e8ab281a404445de7427155e2cecd7d42941fc7 |
Hashes for wsgi_lineprof-0.15.0-cp310-cp310-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9bc0d4049977cd55998ffe614acce43a9cfc41736097fd4e27299f368a25f082 |
|
MD5 | b3a997714b66d9e71fc8e3b0a7306792 |
|
BLAKE2b-256 | e8a72347d6e48521776cd395834bc10ded87c5aea89a179652e57f708809c362 |
Hashes for wsgi_lineprof-0.15.0-cp310-cp310-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2f1d624a28cab35bb4e118673476a08aa6e39c4809261f947109ea49ac3503c9 |
|
MD5 | ea9cb6665c6a25c8887419b239f775c8 |
|
BLAKE2b-256 | 21aaf1605a5b108b8c87a983b76b4c93ea5a0f80d35cd43c6bbcb442cc5b8eeb |
Hashes for wsgi_lineprof-0.15.0-cp310-cp310-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5f0e4720aa2d37b73811deec7aca3257861456d1e1943925687e582b70e4f507 |
|
MD5 | f36a2632b2ff4b52a67dc926ddbeddab |
|
BLAKE2b-256 | cf742d84031b494a908f028ad6dab859d01439b30df8806b809d306023f9af34 |
Hashes for wsgi_lineprof-0.15.0-cp310-cp310-musllinux_1_1_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 11378f52102d4c34784a574f6073b546fc5232393bad729f5afefac26a793ba1 |
|
MD5 | 1cbf2c8916fc46a543b07908108556f9 |
|
BLAKE2b-256 | c752868ab82c05eedaba1ac57796b24b110c8384616ce86a32296df6d452dfca |
Hashes for wsgi_lineprof-0.15.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | aa062ed3ce4787506d5abd9b2133066f63531ce759330686acdf0e2db2db57c0 |
|
MD5 | 86967892b1c7b850b97222333b6118fd |
|
BLAKE2b-256 | 95ba70e3e17703df0cd316dcd2011543e8b1963c66074778824eff4136d8249a |
Hashes for wsgi_lineprof-0.15.0-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1289da7f05d0cb784d3f4412cd5261388c8a17c0ddb136fcbbf5769362fb0bb6 |
|
MD5 | 3505fe9754834e4178f4c4eb6bd61a9d |
|
BLAKE2b-256 | 76162447b4cf31606fb5c85c7f54eba8b6eb2dd351070e0dabd549d683d79f3c |
Hashes for wsgi_lineprof-0.15.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a21784a16341274e0418679318ae9e7e15d2539cf08be1f3df01831da707f9a7 |
|
MD5 | 5875a80110780dd8617428335e673633 |
|
BLAKE2b-256 | 6c2d751fb643cc5b5340d5d00013dd17a51efd844ea9e11d587956023eba6563 |
Hashes for wsgi_lineprof-0.15.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | de2412e09655a0092fdcbea19d2d684eb4199ce62b7463e81a09f79a302df53e |
|
MD5 | 8b8d4713731d3f4e16855f09d89ee9c3 |
|
BLAKE2b-256 | 1350884790d88bbe2c745ba0bb8032231889e73c873cedfc98def7e9c0a14379 |
Hashes for wsgi_lineprof-0.15.0-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f5c832b54d6495bcb97925d8c0b41163fbf93cbfd4cb45a47f684d64a87d2413 |
|
MD5 | 6d9baac765992d492f3f4b58561cc476 |
|
BLAKE2b-256 | d6ae5aa54e381fc4c15e9abd1c0b6b8830d3d124b2dc5f5fd75b3a93e00520ae |
Hashes for wsgi_lineprof-0.15.0-cp39-cp39-win_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e5f9b7809b087a69ebfaffe4fc8f1a9764ad1b790f73253dff82183111d7df9f |
|
MD5 | 3a1e44fa1354f58e74734b96ac9ea61c |
|
BLAKE2b-256 | dde96be2c07bde03c42f6c7b2c2082e98f170ef9c365a100a9536f48edd75680 |
Hashes for wsgi_lineprof-0.15.0-cp39-cp39-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 888f2fbe13e971fab3c074ae05f451bd9fbbd2926d1acdaa41e1f252074a600e |
|
MD5 | 1f7e4cf9ab8edc6bce8283e5b4652f27 |
|
BLAKE2b-256 | d5b8db6643a742a059cff9077f1163666d01cf3f7ba8c5bd790841b1ca3aef51 |
Hashes for wsgi_lineprof-0.15.0-cp39-cp39-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f88de0023c5b2656fea024f1e8857a3b9c905762e62e80bc37403479e64d1c78 |
|
MD5 | e66774691f4773c4b6eb40338504a248 |
|
BLAKE2b-256 | 973e892bb5d620c04641728699028ca3382fa10455fe8c02d914e2de903c4805 |
Hashes for wsgi_lineprof-0.15.0-cp39-cp39-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f8698551ca343aad1bf6531311eee9dacb21a753c3dc8edc71e7ffd07c0353b3 |
|
MD5 | 60ac19158b1e9c668981f2fa18010a71 |
|
BLAKE2b-256 | 35454d172dcbd49f449924066c68db1cbb7afbf974a658ca7adfec8107e75400 |
Hashes for wsgi_lineprof-0.15.0-cp39-cp39-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6e0e704e57b8784ad461835c80449380d1bfcc7b111f89e4d092014e518c67a0 |
|
MD5 | 12c56f824004ab51d4cbc5a28a515718 |
|
BLAKE2b-256 | 64ea185f52d5977454618619e2019e473d56f56f43810150c186d640e0ec9093 |
Hashes for wsgi_lineprof-0.15.0-cp39-cp39-musllinux_1_1_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 55010928cf35f3502301792f47c8faa88ca074eb0c1d25d45d9e19478f69cb92 |
|
MD5 | f1a0644aa80c864346e45d944467411b |
|
BLAKE2b-256 | 8f2d15c4937dcd4ed129990edeeeac29e71292d6e037be6b6841b638f15deca3 |
Hashes for wsgi_lineprof-0.15.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | fdfee0fee36de6ff6e613dec77aea36c1815f88f8818a45505ba1c91179df0c3 |
|
MD5 | 08d37670d8d0f358ef3ed956747a2c42 |
|
BLAKE2b-256 | 9aac619bf24242374ec8bbc0ebcbe30744fb88379b07649589e56cd94c8e60a8 |
Hashes for wsgi_lineprof-0.15.0-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d04fe1346a660f403ca67db808258ba0aa75c16fe1ce9ddaf2ca18af51ab99a4 |
|
MD5 | ce72125a178983295e8cedaa09f7302e |
|
BLAKE2b-256 | 381a26c6112840d74bc94ea71a0c37c8222817c2c54ff5e5426c9ea348182b37 |
Hashes for wsgi_lineprof-0.15.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | baa43a03f1d405f0dae0feb58818516389a76c184de6060904a0c72721aeddcf |
|
MD5 | d1141bad326c80857645654d591e56b3 |
|
BLAKE2b-256 | f58de06ccf62d08ab4adf9f9b711f2bce2e79b5ff9c7a98c2c6969e8cf3a7f97 |
Hashes for wsgi_lineprof-0.15.0-cp39-cp39-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4d86839d58331bae22fcad4fdcbf157140b0e3e57299789ae8824d4eba1c3dbb |
|
MD5 | 583cb7ca28027a31beb40779a47b6e6e |
|
BLAKE2b-256 | b749a4523889b1632674d250d009f40255bcd33138d2271d2f98190d0d16ae2b |
Hashes for wsgi_lineprof-0.15.0-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0aa39c7cb45315ac65447b864d5668a0b4f7323af9629c306fd0870343d91558 |
|
MD5 | 87995b2d20eac9e487a7f507b50d47c7 |
|
BLAKE2b-256 | 4913ae60f83b3241a20bbb241ef3660ef9c3f6f7cf58e92446fbf62c5255b6a5 |
Hashes for wsgi_lineprof-0.15.0-cp38-cp38-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2642420334accac3206b83b24e6882e9d8757a7b5c5a3116b7ac4cfbd9b2d535 |
|
MD5 | f9c774e0d554a076b6d494011f62162c |
|
BLAKE2b-256 | 049580d409ac4386493cf6bba2460f2274bd046eab98c55cdf6d87f8577e8a58 |
Hashes for wsgi_lineprof-0.15.0-cp38-cp38-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 853040b8ea8e4ca9e8b1667f899e7a33fffc5ed659375419308e7476612d6687 |
|
MD5 | 2ba248634116096fa21748b9bb6e4949 |
|
BLAKE2b-256 | ffeb47d508ca4fa62a18387d988a57b58fa615c7e115ee691f264e0ae564b330 |
Hashes for wsgi_lineprof-0.15.0-cp38-cp38-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7106be07971de241159021a58b5ae7accd07db9bff8ab2721c5ae20fc71c1eff |
|
MD5 | 2e61e6d4c4663e5198d7d25a92c6605c |
|
BLAKE2b-256 | f330a6ab33c704d5d0449aca002e4d7e6aa0ef26cd0ae979b88c5fa18ec00a79 |
Hashes for wsgi_lineprof-0.15.0-cp38-cp38-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b670a67e891fd485582adba2b6b9304fdfed40a5840fe5c528b442bec3631aa0 |
|
MD5 | ed522499c0c86e5f23ed586c8d3b173a |
|
BLAKE2b-256 | e0e8923ff4f7fec4022e2c1fd66a339837f8bbc9848278fd97b35e010d9b5d73 |
Hashes for wsgi_lineprof-0.15.0-cp38-cp38-musllinux_1_1_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4d91ec6cc261298401780ec6a1326de553b0e5307b91e16a2b0ea76336195201 |
|
MD5 | 920e9ef90a768a9be48092379b834710 |
|
BLAKE2b-256 | 5124af85d9dc50480d5c7c7cca9fdcb54b4a895bdfa300581eabc4f044b9cc1d |
Hashes for wsgi_lineprof-0.15.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 533e1a00cdcaea3734d14e9e1d3b01b649ad43a5f824f0ea073600bbaa827292 |
|
MD5 | 58c3b35111e339a5b11bd888c95d45c3 |
|
BLAKE2b-256 | 21f1c7a8b47b25bb5c5809d18bfb11528f2737cab3208e2e6eeb6cb6c3d40e48 |
Hashes for wsgi_lineprof-0.15.0-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c0c3b0285eb1d2383abe431dc9b5770ebae31bb8e963317a14d66579cd09ea0f |
|
MD5 | 9f788c7544b4b11878327c211fa3a9a5 |
|
BLAKE2b-256 | 81349ea68976682ff7df1b6965d0c10d18d4378c1502dd829c5409fdbb86b3b9 |
Hashes for wsgi_lineprof-0.15.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e556df1e44fa32f617e39f6446a1ee815fdf939e3dbdc9699c2b47834a53ab73 |
|
MD5 | 9ad93f771d6ebde0d85bed692065752e |
|
BLAKE2b-256 | 75484812df9857eea775fc1bad366b4eb74c69893cd4f0201a934aaa21601d33 |
Hashes for wsgi_lineprof-0.15.0-cp38-cp38-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | fd06b9fd0d652f4e94fe7a15a76a980cb17780d1708b75015e4e69433fbb7cdd |
|
MD5 | 990b767b47a3a2a2dd785b1d2502376d |
|
BLAKE2b-256 | 20e9561639bc0b5d8f1e81ceadca7f1e680dda36a541347474c00415f4b4f797 |
Hashes for wsgi_lineprof-0.15.0-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4feb8266403865bb64a0c7cd577682b22f14fed3f90b9559e817b5216f916469 |
|
MD5 | 000332ff44a6515f1c2e2aa72ce53b10 |
|
BLAKE2b-256 | 8a7181b47b03e07560ae1a503d05d7766853522320ba86e5e3cf35741fbc699c |
Hashes for wsgi_lineprof-0.15.0-cp37-cp37m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f2463e8548c27f6e198b4eac399935cc5fc4a8636b177225bacc5f936a562a31 |
|
MD5 | f5d863854f33c646b2ae797ed87b6152 |
|
BLAKE2b-256 | 79f10d14553c990edaed0d1209a7cc6777f900df7d8e9441849cf149cdac5de8 |
Hashes for wsgi_lineprof-0.15.0-cp37-cp37m-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 21fee11b80d47905b73043af73d48ec815ed6eb1e29385522b91f9e905b00ed9 |
|
MD5 | 117da84a8b7ecf12e6b411aaa3760f26 |
|
BLAKE2b-256 | ab1fc85f553932e0403d924da61d82db5a4dea7b182da247f5536c9982c838e7 |
Hashes for wsgi_lineprof-0.15.0-cp37-cp37m-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b997689946d95c65e610fe11d7072dd572b321834745524464e7185e1598f973 |
|
MD5 | 76ffed809b15e4461ec55f62e67c21c3 |
|
BLAKE2b-256 | 833bf31a08b8843079bb2f99fb1f9a6ed02456240a26612ce1ac25332df12725 |
Hashes for wsgi_lineprof-0.15.0-cp37-cp37m-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ff25635a00654b947d5e2fc651ee485877cd9459eb506f342944dd1b6d9702fb |
|
MD5 | 3554737b4940f4b728d4b0f92a405a0c |
|
BLAKE2b-256 | 9998c369bba42fbaedda7c8c26ce337a006bc87fc6f7d6cd415d679911914bc1 |
Hashes for wsgi_lineprof-0.15.0-cp37-cp37m-musllinux_1_1_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f1fe807a60d47a2492e4082ce28b5017889dd9db9b7a78699facd72dc60e0164 |
|
MD5 | 16429745fc6c1b377663ba5a7b0ff81c |
|
BLAKE2b-256 | f36c90f3f1e85ef1b7ffd312d2098205878fc146868ff8b748a0355b3bbb0ed1 |
Hashes for wsgi_lineprof-0.15.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 57267154e67b07ffc7ce84263f1b6300bece09463888221531c8de1b25141f2d |
|
MD5 | a30240a523c32d375605d18d6462e4d2 |
|
BLAKE2b-256 | 65c7065eb4cb530b978a53ba6250d94b44f35d4aea0274ea392a6058dc5eaf4c |
Hashes for wsgi_lineprof-0.15.0-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2a10a634c798e995145dfa5e4ca4c276bfafb4c472fe4196e8caa353e77ef72e |
|
MD5 | d11fe4b3ec52e30ee03ea0b67c760283 |
|
BLAKE2b-256 | 9e666eb26a147c0d18b46fd1f56090a6214d052fdab54cd0eadc7ecf44bc62e4 |
Hashes for wsgi_lineprof-0.15.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ca8f0502a1325b67f063ef3ae17476e5760e962603aa0aba1e39a27cc398905e |
|
MD5 | e5076cfb57cd7b20db44c920f1a64e22 |
|
BLAKE2b-256 | a0de237931c632a1607dbbe7f78bbc8760d68bd54619045d8442528c12a316b0 |
Hashes for wsgi_lineprof-0.15.0-cp37-cp37m-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 23615e5b6608adb593a5eb5e9cd02748ab058f85b4de679d19b95349b5ea70c7 |
|
MD5 | db6afec2b7a8a8ab3444325ceea9a1c1 |
|
BLAKE2b-256 | 15d38ab996bb615a13ace19ab7a78d45cdac964796d2fe65d51c4ff37381a40f |