2012-01-05 10 views
36

Non aggiunge nulla e rende la pagina più lenta e voglio scomparire. Non chiedere C'è poco sul profiler sul sito web e nulla nella configurazione dell'app.Come disabilitare la barra profilatrice Symfony 2?

+1

Appare solo in dev e c'è molto di più, che rende la pagina più lenta (in dev env): penso che non ne valga la pena;) – KingCrunch

risposta

81

Questa impostazione è in app/config/config_dev.yml:

web_profiler: 
    toolbar: true 
    intercept_redirects: false 
+2

Come commento per i futuri sviluppatori. Questa risposta è la migliore se si desidera "DISATTIVARE" i REDIRECTS in modalità dev ed essere in grado di eseguire il debug di POST e così via.Basta intercettare_rediretti: vero e funzionerà: D –

76

aggiuntive: se si desidera disattivare per un'azione speciale nel controllore di utilizzare questo:

if ($this->container->has('profiler')) 
{ 
    $this->container->get('profiler')->disable(); 
} 
+1

+1, molto utile :-) – richsage

+0

+1 proprio quello che stavo cercando! – coder4show

+0

+1, eccellente! – sickelap

4

Prova questo

framework: 
    profiler: { only_exceptions: true } 

nel tuo app/config/config_dev.yml

0

Se si è preoccupati per le prestazioni, non si dovrebbe eseguire con dev. Dev inoltre limita il caching e può inserire bundle aggiuntivi.

Esegui in modalità prod e riscalda la cache prima di eseguire i test delle prestazioni.

+0

Non so perché questo è stato downvoted, è corretto, informazioni utili che affronta la domanda. – NDM

+0

no no, non risponde alla domanda dell'OP, se la funzionalità fornita dal profiler non è necessaria, allora non fa altro che rallentare l'ambiente di sviluppo – user3531149

13

Se si imposta framework.profiler.collect su false nel file config.yml, la barra del profiler non verrà visualizzata (anche se web_profiler.toolbar è impostato su true).

framework: 
    profiler: 
     collect: false 

Questo permette quindi di attivare selettivamente i collezionisti nel codice manualmente, in questo modo:

$this->container->get('profiler')->enable(); 

documentazione qui: http://symfony.com/doc/current/reference/configuration/framework.html#collect

+0

(Questo è l'opposto dell'approccio altrettanto valido preso nella risposta di @ besnik .) – Alex

5

Se è stato creato un nuovo progetto Symfony dal Symfony 2.5, questi parametri sono impostati in app/config/paramaters.yml

parameters: 
    # ... 
    debug_toolbar: true 
    debug_redirects: false 

Basta impostare debug_toolbar su false.

-1

Un altro modo che sembra disabilitarlo, è di non avere _dev nel routing dell'applicazione.

Quindi per me in un bitnami installazione di Symfony 2, semplicemente cambiando app/conf/httpd-app.conf leggermente cambierebbe il programma:

RewriteBase /symfony/app_dev.php 

a

RewriteBase /symfony/ 

e sarebbe tenere la barra degli strumenti da venire .

2

Per ancora ottenere output in/_profiler ma senza la barra degli strumenti, si può barare:

$request->headers->add(array('X-Requested-With' => 'XMLHttpRequest')); 

Ecco perché in WebProfilerBundle/EventListener/WebDebugToolbarListener.php c'è un controllo esplicito per questo prima di iniettare la barra degli strumenti.