djangosampler

Logiciel capture d'écran:
djangosampler
Détails logiciels:
Version: 0.6.0
Date de transfert: 14 Apr 15
Développeur: Colin Howe
Licence: Gratuit
Popularité: 3

Rating: nan/5 (Total Votes: 0)

djangosampler est une application Django qui vous permet de goûter à un pourcentage de vos requêtes (SQL, Mongo, etc) et de visualiser celles qui prennent le plus de temps. Les requêtes sont regroupés par où ils provenaient dans votre code.
Installation
Installez:
python setup.py install
Configurer:
- Ajouter à vos djangosampler INSTALLED_APPS
- Ajoutez les tables (manage.py syncdb ou manage.py migrer si vous utilisez du Sud)
- Ajouter les points de vue:
& Nbsp; urlpatterns + = patterns ('',
& Nbsp; (r '^ sampler /', include ('djangosampler.urls')),
& Nbsp;)
- Set DJANGO_SAMPLER_FREQ à une valeur autre que 0
- Définir DJANGO_SAMPLER_PLUGINS à une liste de plugins. Pour seulement échantillonnage SQL par défaut raisonnable est:
& Nbsp; DJANGO_SAMPLER_PLUGINS = (
& Nbsp; »djangosampler.plugins.sql.Sql ',
& Nbsp; # plugins sont appliqués dans le même ordre que cette liste
& Nbsp;)
- Il ya plusieurs plugins disponibles et il est intéressant de lire à travers eux pour obtenir le meilleur parti de cet outil.
- Si vous utilisez échantillonnage basé sur des coûts puis réglez DJANGO_SAMPLER_BASE_TIME à la durée prévue d'une requête normale en quelques secondes. Par défaut, ce est réglé à 5ms.
Affichage des résultats
Après laisser couler l'échantillonneur pour un moment, vous serez en mesure d'afficher des requêtes (regroupées par leur origine) à l'adresse que vous avez configuré.
Configuration
DJANGO_SAMPLER_PLUGINS
Django Sampler a une architecture de plug-in pour vous permettre de contrôler la quantité de données que vous voulez collecter.
Dans votre settings.py ajouter ce qui suit:
DJANGO_SAMPLER_PLUGINS = (
& Nbsp; »djangosampler.plugins.sql.Sql ',
& Nbsp; # plugins sont appliqués dans le même ordre que cette liste
)
L'exemple ci-dessus va ajouter le plugin SQL.
Plugins disponibles et leurs paramètres sont décrits dans la section Plugins ci-dessous.
DJANGO_SAMPLER_FREQ
DJANGO_SAMPLER_FREQ configure le pourcentage de requêtes qui seront enregistrés. Il doit être compris entre 0,0 et 1,0.
Si ce ne est pas réglé alors aucun plugins seront installés et votre code se exécutera normalement.
DJANGO_SAMPLER_USE_COST
DJANGO_SAMPLER_USE_COST va permettre un échantillonnage basé sur les coûts. Cela provoque requêtes qui se exécutent pendant une longue période à échantillonner le plus souvent requêtes courtes.
La chance qu'une requête est échantillonné est multiplié par la durée totale de la requête prend. Si une requête prend deux secondes, puis il sera deux fois plus susceptibles d'être échantillonnés comme une requête qui prend 1 seconde.
Le coût pour une requête est ajustée pour tenir compte de ce qui suit:
coût = max (1,0, le temps * DJANGO_SAMPLER_FREQ) / DJANGO_SAMPLER_FREQ
Plugins
Une liste des plugins disponibles suit. Vous pouvez écrire votre propre plugin, ce qui est décrit dans la section «Ecrire vos propres plugins '.
Django SQL
Classe Plugin: djangosampler.plugins.sql.Sql
Le plugin SQL échantillonneur déguster un pourcentage de requêtes SQL qui se produisent dans votre application. Les échantillons seront regroupés par requête et pile traces seront enregistrées pour trouver où les requêtes sont originaires.
Demandes Django
Classe Plugin: djangosampler.plugins.request.Request
La demande plug-in installe un Middleware qui échantillonner le temps pris par les demandes.
Exemple de code
Ce ne est pas strictement un plugin. Ce est un gestionnaire de contexte qui vous permettra de marquer des blocs de code et exemples de combien de temps les blocs prennent à courir. E.g .:
djangosampler.sampler de l'échantillonnage à l'importation
avec échantillonnage ('my_code »,« some_fn'):
& Nbsp; do_something_slow ()
Céleri
Classe Plugin: djangosampler.plugins.celery_task.Celery
Le plugin de céleri utilise les signaux de céleri pour goûter le temps nécessaire pour exécuter des tâches.
MongoDB
Classe Plugin: djangosampler.plugins.mongo.Mongo
Le plugin MongoDB sera déguster un pourcentage de Mongo commandes (requêtes, inserts, etc.) qui se produisent dans votre application. Les échantillons seront regroupés par commande et de la pile traces seront enregistrées pour trouver où les requêtes sont originaires

Exigences :.

  • Python
  • Django

D'autres logiciels de développeur Colin Howe

monner
monner

20 Feb 15

Commentaires à djangosampler

Commentaires non trouvées
Ajouter un commentaire
Tourner sur les images!