2010-12-09 19 views
6

J'ai toujours utilisé la bibliothèque timeit de Python pour chronométrer mes petits programmes Python. Maintenant, je développe une application Django et je me demandais comment chronométrer mes fonctions Django, en particulier les requêtes.Comment chronométrer les requêtes Django

Par exemple, j'ai un def index(request) dans mon views.py qui fait un tas de choses quand je charge la page d'index. Comment puis-je utiliser timeit pour chronométrer cette fonction particulière sans trop modifier mes fonctions existantes?

Répondre

5

Le debug toolbar est ce que vous voulez, il vous aide à chronométrer chacune de vos requêtes.

Cette variante peut également être utilisée.

http://djangosnippets.org/snippets/93/

+0

Nice, j'ai installé et configuré debug_toolbar, il est une fonctionnalité agréable d'avoir dès le départ. – chiurox

14

si votre projet django est en debug, vous pouvez voir vos requêtes de base de données (et temps) à l'aide:

>>> from django.db import connection 
>>> connection.queries 

Je sais que cela ne satisfera pas votre besoin de profiler fonctions, mais espère que cela aide pour la requêtes partie!