Repoze Notes

Wed, 20 Feb 2008

repoze.profile 0.2 Released

A couple weeks ago, Tres quietly created and released a useful piece of middleware called repoze.profile. This middleware sits in the WSGI pipeline and performs aggregate Python profiling across all requests to the application(s) on its "right hand side". Ian had some profiling middleware in Paste, but it performed profiling of a single request only.

Version 0.2 adds a (butt-ugly-and-utterly-ripped-off-from-Zope) browser UI that allows you to sort and filter profiling results. It looks like the image below.

To get it, do easy_install -i http://dist.repoze.org/simple repoze.profile, then wire it up in your WSGI pipeline. For example:

 [pipeline:main]
 pipeline = egg:repoze.profile#profile
            egg:Paste#cgitb
            egg:Paste#httpexceptions
            myapp

You should then be able to visit /__profile__ in your browser while talking to your WSGI application to see the profile UI. Note that the middleware (by default) discards the first request info, so you will need to hit your application a few times to see meaningful profile info.

See the README for more detailed configuration information.

- Chris

posted at: 11:25 | permanent link to this entry