launchpad-dev team mailing list archive
-
launchpad-dev team
-
Mailing list archive
-
Message #03813
Getting KCacheGrind profiles of pages on launchpad.dev
Hi everyone,
During the Epic Robert and I coded up and landed a patch that generates
KCacheGrind profiles for launchpad requests. KCacheGrind is a powerful tool for
exploring call graphs, and this change should make it easier to see what pieces
of Python are taking the most time to run.
To switch on profiling, add this to configs/development/launchpad-lazr.conf:
[profiling]
profile_requests: True
Then start the dev app server with 'make run', and use curl or wget to make
*one* request to the URL you want:
$ make run
$ curl -k https://launchpad.dev/
$ kcachegrind
2010-07-20_10\:01\:46.680-RootObject\:index.html-OOPS-1662X1-Dummy-2.prof
Full instructions are here: https://dev.launchpad.net/Debugging.
For other teams that want to see how we hooked this feature into Zope, here is
the patch:
http://bazaar.launchpad.net/~launchpad-pqm/launchpad/stable/revision/11157
We don't have the magic '++profile++' URL on-demand profiling working yet. That
will come later. Contributions towards it are welcome, feel free to ping me on
IRC for the details.
Maris
Follow ups