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.14.0-cp310-cp310-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4fe6bd551964c400f3d754108face7e183e6e717bab147f23f93a724962c0b11 |
|
MD5 | 87ede6174afc7114573cc0d7a145b9ab |
|
BLAKE2b-256 | 4ea189d3dcad1a2dac67df78ddde53f9386de828b67883d7323ada43f1d4d5f1 |
Hashes for wsgi_lineprof-0.14.0-cp310-cp310-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4a7b80142c6aa948e2ff3b3d34bf0ad1d76b2b241e68e42f03624b3bd1816b2d |
|
MD5 | f4c380b3a8ead1978225711c7c7bd596 |
|
BLAKE2b-256 | 5b177879eb53f533a6d4e81f3dc613b1ac9c5b81626493eb127adda53bc31568 |
Hashes for wsgi_lineprof-0.14.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2b10e9000953d215534f26e2e961601ac326c17e28e6ae44354eeaf93c2dd8b7 |
|
MD5 | 9409644d197a7275da2351bb7de7cca8 |
|
BLAKE2b-256 | cfa2a1aec955b6bf5e8084e4239b77b0bea4e049685dd8d49260629b9e62c06e |
Hashes for wsgi_lineprof-0.14.0-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.manylinux_2_24_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d021e92a1b7caeb3123e8d3df9fad6918d19ef98d2af103fbae5b0c491dc8b36 |
|
MD5 | 041d3ba2a863f8d28bc13232d8a8ae3b |
|
BLAKE2b-256 | 1abd0099b80aee29833a81a4b15a53a9b5645209ab1ce763aa3717afc1329ca7 |
Hashes for wsgi_lineprof-0.14.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b103e28f6c31c7670458ab00421dbdd28ff26ef64c1e6c5bbccc999042bee82c |
|
MD5 | 53390d23c967328bdb183a28cec3a784 |
|
BLAKE2b-256 | b8dde4150447f1d2ccd1d3ffe98e5e73d13b3e415ddf19afec95193fa471c831 |
Hashes for wsgi_lineprof-0.14.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | aa120a33bda0035a327083fb778a1267e151c9ad1a4b67fccbdf3ad95e79e25d |
|
MD5 | e0b6543e84e47ca6b8334e34e40b77b9 |
|
BLAKE2b-256 | e8f35f6fb325ec2fdb529ad9583b25b75605851a124e6922b7028a2fde76d595 |
Hashes for wsgi_lineprof-0.14.0-cp310-cp310-macosx_10_14_x86_64.macosx_10_10_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1d9e609274eee584feaa3da408c15cbab71aed8931389f1593079818d7b7da7e |
|
MD5 | 3a39405807746a328eac3d76b4b15c3e |
|
BLAKE2b-256 | c4765c13e896a87152cdfeded4a7923fe1bde81f0f70bb31e3f897bc6645a70f |
Hashes for wsgi_lineprof-0.14.0-cp39-cp39-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | fdef87ae05b59da659a46256a7c8b300e56b2ea2eba4cf6f6c7791d80f344c16 |
|
MD5 | a13a2cf5c2bcf50f8a74360a743b3a85 |
|
BLAKE2b-256 | 497f6eef05ef039bf3c86439084e5f32b8c9e49573b7eece8b5f9e8fa180b5ed |
Hashes for wsgi_lineprof-0.14.0-cp39-cp39-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | abf51fc4ef0befb3b0201635c7bc92f2b38e2ec7c00c1393862dfa8db19a5a01 |
|
MD5 | 8509cd8728dce10a0f4ce2b6fc4c8c00 |
|
BLAKE2b-256 | 6101fca3f97f8145aded527fe1314d5d0679045eb58a56de7c8d27c6c13b9074 |
Hashes for wsgi_lineprof-0.14.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6ea5fbd6f07f05531adf9e7997c1186b6becc2f6984964313f9bc63925615d38 |
|
MD5 | 24474e350faaf646c287e2f8a66db71c |
|
BLAKE2b-256 | 31a562a249d51ee48271a7bbe4cb76b82bd7f60e44f8f2311caccb4bd5c500c1 |
Hashes for wsgi_lineprof-0.14.0-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.manylinux_2_24_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b849456e47eaff1fab7d3188880dcc4af77432da651c6cc2457dbf26e5eaba52 |
|
MD5 | 69a3be04cceb802371e716ea3b2b35df |
|
BLAKE2b-256 | 0f461ad7de97562a934952a0d202ecdbe6c85bc54dbc478217e14981d46360d4 |
Hashes for wsgi_lineprof-0.14.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | abf805ea68a3a5f9a7fb7d22aa1913a1e91a39e43a469402f99c15ee652c6194 |
|
MD5 | cbd582031b9c2b5ce1ba40be62cbc746 |
|
BLAKE2b-256 | 76acaf4ad1ed6906584f9fb28999ee7702b55a370fe0986abc5165c404ab9b5f |
Hashes for wsgi_lineprof-0.14.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2ba19f2accdd53f675db762e30e4708b3ace7c49ba7bd72d8b7ecdc9db15f8d7 |
|
MD5 | 95ece01762a37b7bfa3ba1da44da490b |
|
BLAKE2b-256 | 8b4531f275c75c1aed347882d718e5eb2d97ad3db15003ee85c13c475b780b11 |
Hashes for wsgi_lineprof-0.14.0-cp39-cp39-macosx_10_14_x86_64.macosx_10_10_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2925bb03cbec496a43e6a36ca8d3dc040b47b451ab53ed19bf9f8f3eacdfe9b7 |
|
MD5 | f0f0931387c0d7b2c9280fd703601a82 |
|
BLAKE2b-256 | b550338c8cab9b142cd83996247011f22e39c9c7e7ca89bafb6dd01e4f2db7fe |
Hashes for wsgi_lineprof-0.14.0-cp38-cp38-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4e21dbaac9accc1895e673363ef5f8f427440745b3005af3504e4e5a9f85186b |
|
MD5 | d02c4472d421bc41b7991ef55c6a8dbe |
|
BLAKE2b-256 | 58cc69773606e6e970366640807f3e3b72b8bdc258a7b9b8893b70f4e41c391e |
Hashes for wsgi_lineprof-0.14.0-cp38-cp38-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e2d8d01414fafdef2fa26ef62930e7d412de6dfdeaa1a396f2c34fe57f774dcf |
|
MD5 | 48097780254d4fc82063bcabbe6cca83 |
|
BLAKE2b-256 | 47f43dcfe185570efcb38fefca9604ee5b56119075a65e6cc8198f98925a0d99 |
Hashes for wsgi_lineprof-0.14.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8147cccea0083071d79712a430842907b9eebf7dda1ca6fcf7287cbcee1d32fd |
|
MD5 | 1989226f64dc30f267cac99f1974e60c |
|
BLAKE2b-256 | 1ef0058da44f16eab321c758a14f0b026309588358855abad030b1019ec1dfd0 |
Hashes for wsgi_lineprof-0.14.0-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.manylinux_2_24_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f6500bacd938cc2f606235e156fc07636afa3c054ff337b563d79e8994872014 |
|
MD5 | 5debe6d02619dcc2173b544bd3d48acb |
|
BLAKE2b-256 | f128f5d185e243efaecd026a02006988bcb414df6c613b3850078fe80c28d706 |
Hashes for wsgi_lineprof-0.14.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9a99fef462181978fe9a5eb664a15f5c36798c1e966a9f2777054d1b970e3fde |
|
MD5 | b6b38ec9f76bad52f9e58076ccc40cf2 |
|
BLAKE2b-256 | 0b5f5f1c2cb3a2fcfc6676e4ba7c0e300657f2c94f0207b000b8dff25d286b5f |
Hashes for wsgi_lineprof-0.14.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ea82cdc7ea81b6602f110d6e147288405659548422b4548eb4a433825d6e2c2b |
|
MD5 | 5d7e2740321484f7aca77312a99de614 |
|
BLAKE2b-256 | c4f9803023724204cb52362880804aff505382ec2e58010de1f3c69abd791891 |
Hashes for wsgi_lineprof-0.14.0-cp38-cp38-macosx_10_14_x86_64.macosx_10_10_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1e05be5a71bb6e3904b5cfd66c4e551fa85ec1f146074c146acf14f056588da4 |
|
MD5 | 8a0c906c8943c3e7356449d582c5bcab |
|
BLAKE2b-256 | e220269c698d891a7db141069c5073b9c8d99a9f48246f46593b9a776e60bcd5 |
Hashes for wsgi_lineprof-0.14.0-cp37-cp37m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 11a6baffcb2d1ad3f5b624d5aac5b9ce4154ca730c16c0004fee918d8d5e4e70 |
|
MD5 | f56213ac1d5feea4c83ce48ba066463c |
|
BLAKE2b-256 | eeb5ee6cc057454ce629ccb6f8b729f738851304f00d81b85e41d7dedc48ca18 |
Hashes for wsgi_lineprof-0.14.0-cp37-cp37m-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 28fbaf3ef8dbd82eeee30dddd6d5ab88fb77cb0f8c4a626fc8171214b232d8f7 |
|
MD5 | 705603e5edef58fcf70d9fe826c657e9 |
|
BLAKE2b-256 | d2584a604cd4fb5b7a7637751dcc754e12b694acf49e76a243bf79199607fbdd |
Hashes for wsgi_lineprof-0.14.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | edbbdd05e54af165a3329a038a075bbabef3a6dc883797881f70ff8f06c5082a |
|
MD5 | d60ca2853f047c06b519b46f5b04e58c |
|
BLAKE2b-256 | 9352509cdc19c725d66b2dec0fd9b6d950760242c942510e58ccd7344aacd2bf |
Hashes for wsgi_lineprof-0.14.0-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.manylinux_2_24_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5fd66c48d6b795474df677fd10539a48b2db35a4f17ab486de91d27baf2dc4a6 |
|
MD5 | 4d40b6584e01916a96077494ffc5f112 |
|
BLAKE2b-256 | cbb691bbd7e9936d76623fb9d41a53cb49da41a9357b71dbe1a83e5a78dff4ce |
Hashes for wsgi_lineprof-0.14.0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 781bfc68b5619ffa1877946255ef31456f2f44d31e0e015bc8d793d3562e29b6 |
|
MD5 | 9df3c90264810dae005787a2ee84d530 |
|
BLAKE2b-256 | 2277ce372f972282f8dce6ef789c7c6ccb40f3e01042ef2c1c6a0d852848f04b |
Hashes for wsgi_lineprof-0.14.0-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5b507ae78c164bacfede094bf9d56ca037ab546f8f6600be2d955e23e6f0ec52 |
|
MD5 | 3508b7aeb1b693feaa3847fb4888b42e |
|
BLAKE2b-256 | 3ef4a11ec7091fc4f228545edaae83ada0f2a5325e703c3cb00238fac69d7fc9 |
Hashes for wsgi_lineprof-0.14.0-cp37-cp37m-macosx_10_14_x86_64.macosx_10_10_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e57405ae7e52446cd61c8e089eb5bbddb76667d5d8ea2dc8f1f5b44ca22425eb |
|
MD5 | 22143c28a861ac752ba5bb119d730ed4 |
|
BLAKE2b-256 | f56a36563bb8c5fe397b98252e4b3a37abea164366d01fe6f557e2eca87a6cc4 |
Hashes for wsgi_lineprof-0.14.0-cp36-cp36m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6240f9ffffa4309d427d980257c125e94c78d89501326125b406441f07d2a20b |
|
MD5 | 029800f9b9c066cf84344e83684ad8d3 |
|
BLAKE2b-256 | fcd27123c63e3123bf500155bbb24b3d42f30c3951f36a16c0d5c4ac39c3e5f0 |
Hashes for wsgi_lineprof-0.14.0-cp36-cp36m-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 416f75c6b3ca354018d92cf0d1a120e688ca71eb35dc9c38422389dc7ef924fe |
|
MD5 | d6f9b834e84db12bcf71dabaf40f1c3a |
|
BLAKE2b-256 | 694d4e6521f2f825ef88b5d208b294e0ff43afdc012efe297c39f989a5f3f3b0 |
Hashes for wsgi_lineprof-0.14.0-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | bdf04479c4ff5e070a4dd22636bb5aa2923b5dd044357ef9b69de17694214e4b |
|
MD5 | b92e8154926187bd54aae6407dcc2bea |
|
BLAKE2b-256 | 6830409e545d49040b577584ac0033b19a23f99ba2a73b2ecadec6e3f53855f3 |
Hashes for wsgi_lineprof-0.14.0-cp36-cp36m-manylinux_2_17_i686.manylinux2014_i686.manylinux_2_24_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 85fb3dfb31b78c97d110f4775fa1edb7521fa568060d0e61e6481bf5349a4671 |
|
MD5 | 354658aba2a962a9ba947e758ad23f7a |
|
BLAKE2b-256 | 83072eeb2bbdbc731540f4c8f4d69f4b1b838d2071c9b7322543dbd13de7d540 |
Hashes for wsgi_lineprof-0.14.0-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2fd8e60533327e6b109d8d0a29a146132691342ec657ed4fc68c5f76d93500b8 |
|
MD5 | a296287b606a46e3f93cca0f77eb9435 |
|
BLAKE2b-256 | 8e4589ae312f9940699419943b1f418755848b28f50d0312647b3f9982769993 |
Hashes for wsgi_lineprof-0.14.0-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | edb8ae77932b7fa2dc630fc1d24d90b8c58813726892fba736578e5b938b23f4 |
|
MD5 | e8ecc223b5a5e3c63d66d5f45ad3f961 |
|
BLAKE2b-256 | 65a74874c00fb3766d24324c77f1254f52a872cad7a0d776366c156ef02af37d |
Hashes for wsgi_lineprof-0.14.0-cp36-cp36m-macosx_10_14_x86_64.macosx_10_10_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 140d3f6384eeae28389ef2f0f6c52099e5568c2690d2cb7ff5ee077207f52835 |
|
MD5 | 91fb6e3799fe77aa2914490cce3c811d |
|
BLAKE2b-256 | d8de56ccd7d8f6767371030dc1e0b82fe1bdff0a7d546da65475ced0fe48197c |