djangosampler

Software screenshot:
djangosampler
Software informatie:
Versie: 0.6.0
Upload datum: 14 Apr 15
Ontwikkelaar: Colin Howe
Licentie: Gratis
Populariteit: 2

Rating: nan/5 (Total Votes: 0)

djangosampler is een Django app die u toelaat om te proeven van een percentage van uw queries (SQL, Mongo, etc) en bekijk de degenen die zijn toegang tot de meeste tijd. De vragen zijn gegroepeerd door waar ze afkomstig zijn van in de code.
installatie
Installeren:
python setup.py installeren
Configureren:
- Djangosampler toevoegen aan uw INSTALLED_APPS
- Voeg de tabellen (manage.py syncdb of manage.py migreren als je Zuid-gebruik)
- Voeg de kijkers:
& Nbsp; urlpatterns + = patronen ('',
& Nbsp; (r '^ sampler /', onder meer ('djangosampler.urls')),
& Nbsp;)
- Set DJANGO_SAMPLER_FREQ naar een andere waarde dan 0
- Set DJANGO_SAMPLER_PLUGINS om een ​​lijst van plugins. Voor alleen monsterneming SQL een verstandige standaard is:
& Nbsp; DJANGO_SAMPLER_PLUGINS = (
& Nbsp; 'djangosampler.plugins.sql.Sql',
& Nbsp; # Plugins zijn in dezelfde volgorde als deze lijst toegepast
& Nbsp;)
- Er zijn verschillende plugins beschikbaar en het is de moeite waard het lezen te krijgen door hen het meest gebruik van deze tool.
- Als u gebruik maakt van de kosten op basis van steekproeven vervolgens DJANGO_SAMPLER_BASE_TIME om de verwachte duur van een normale query in seconden. Standaard is deze ingesteld op 5ms.
Bekijk Resultaten
Na het laten van de sampler run voor een tijdje zul je in staat om vragen te bekijken (gegroepeerd volgens hun herkomst) op de URL die u geconfigureerd.
Configuratie
DJANGO_SAMPLER_PLUGINS
Django Sampler heeft een plug-in architectuur, zodat u om te bepalen hoeveel gegevens u wilt worden opgehaald.
In uw settings.py voeg de volgende:
DJANGO_SAMPLER_PLUGINS = (
& Nbsp; 'djangosampler.plugins.sql.Sql',
& Nbsp; # Plugins zijn in dezelfde volgorde als deze lijst toegepast
)
Het bovenstaande voorbeeld zal de SQL-plugin toevoegen.
Beschikbare plugins en hun instellingen worden beschreven in de sectie Plugins hieronder.
DJANGO_SAMPLER_FREQ
DJANGO_SAMPLER_FREQ configureert het percentage van de vragen die zullen worden opgenomen. Het moet tussen 0,0 en 1,0.
Als dit niet wordt ingesteld geen plugins zal worden geïnstalleerd en uw code zal draaien als normaal.
DJANGO_SAMPLER_USE_COST
DJANGO_SAMPLER_USE_COST zal kosten gebaseerde bemonstering mogelijk te maken. Hierdoor query die gedurende lange tijd vaker te bemonsteren dan korte vraag.
De kans dat een query wordt bemonsterd wordt vermenigvuldigd met de totale tijd dat de vraag neemt. Als een query duurt 2 seconden dan zal het zijn twee keer zoveel kans te bemonsteren als een query die 1 seconde duurt.
De kosten voor een query wordt als volgt aangepast om rekening te houden voor deze:
kosten = max (1,0, tijd * DJANGO_SAMPLER_FREQ) / DJANGO_SAMPLER_FREQ
Plugins
Een lijst met beschikbare plugins volgt. U kunt uw eigen plugin te schrijven en dit wordt beschreven in de sectie 'schrijven van uw eigen Plugins'.
Django SQL
Plugin klasse: djangosampler.plugins.sql.Sql
De SQL-sampler plugin zal genieten van een percentage van de SQL-query's die zich voordoen in uw toepassing. De monsters worden gegroepeerd op de query en stacktraces zal worden opgenomen om uit te vinden waar de vragen van oorsprong zijn.
Django Verzoeken
Plugin klasse: djangosampler.plugins.request.Request
Het verzoek plugin installeert een Middleware dat de tijd die verzoeken zullen proeven.
Proeven van een code
Dit is niet strikt een plugin. Dit is een context manager die u zal toestaan ​​om blokken code te markeren en te proeven hoe lang de blokken te nemen om te draaien. Bijv .:
van djangosampler.sampler bemonstering import
met sampling ('mijn_code', 'some_fn'):
& Nbsp; do_something_slow ()
Selderij
Plugin klasse: djangosampler.plugins.celery_task.Celery
De Selderij plugin maakt gebruik van Selderij's signalen naar de tijd genomen om de taken uit te voeren proeven.
MongoDB
Plugin klasse: djangosampler.plugins.mongo.Mongo
De MongoDB plugin zal proeven van een percentage van Mongo commando (queries, inserts, etc.) die zich voordoen in uw toepassing. De monsters worden gegroepeerd op commando en stapelen sporen zal worden opgenomen om uit te vinden waar de vragen van oorsprong zijn

Eisen .

  • Python
  • Django

Andere software van ontwikkelaar Colin Howe

monner
monner

20 Feb 15

Reacties op djangosampler

Reacties niet gevonden
Commentaar toe te voegen
Zet op de beelden!