|Version 6 (modified by 10 years ago) (diff),|
django.core.handlers.profiler-hotshot provides profiling support for Django when using mod_python. Hotshot generates logs that can be also used by aplication like kcachegrind. Read Django profiling with hotshot and kcachegrind for more details.
Here's a similar solution for the internal development webserver. Apply the included patch to
django/core/management.py and start Django with
manage.py runserver. Each request will create a
.prof file in your
/tmp directory. You can then open a Python shell and print the statistics:
>>> import hotshot.stats >>> stats = hotshot.stats.load("stones.prof") >>> stats.strip_dirs() >>> stats.sort_stats('time', 'calls') >>> stats.print_stats(20)
You can also use gather_profile_stats.py in the Django distribution to aggregate the generated profilings and open them with pstats.Stats
runserver-profiler.diff (1.3 KB) - added by 11 years ago.
patch for management.py enables profiling for runserver
runserver-profiler2.diff (1.2 KB) - added by 10 years ago.
updated the patch against the latest revision
runserver-profiler2.2.diff (1.2 KB) - added by 10 years ago.
updated the patch against the latest revision and made the path configurable
profiler-cprofile.py (547 bytes) - added by 9 years ago.
Adapted profile handler to use cProfile module. Place in django/core/handlers and set PythonHandler in apache conf
runserver-profiler3.diff (2.3 KB) - added by 8 years ago.
New patch against r7569. Extend runserver command with '--profile' argument. Will run djangos development server with profiling output into systems temporary directory.
Download all attachments as: .zip