2013-11-21 11 views

risposta

22

C'è un registratore di chiamata rotating_file.
Ecco un esempio di configurazione:

monolog: 
    handlers: 
     main: 
      type: rotating_file 
      path: %kernel.logs_dir%/%kernel.environment%.log 
      level: debug 
+12

Idealmente anche se questo dovrebbe essere fatto utilizzando registro ruota su linux. – Seldaek

+0

@Seldaek Forse potresti pubblicare una risposta per illustrarlo? Come creatore di Monolog sai meglio di me come ottenerlo! ;-) – Florent

+6

Come creatore di Monolog, so che non volevo riscrivere uno strumento che è stato lì per sempre e funziona molto bene, ma non sono logrotato pro :) Comunque @loicfavory ha postato un esempio di configurazione di logrotate in basso, così I ' Lascio a quello. Volevo solo sottolineare che non tutte le attività sono fatte meglio con php. – Seldaek

35

su Linux, è possibile utilizzare logrotate (non so se esiste altre soluzioni su Windows o MacOS)

In /etc/logrotate.d/ creano (es. sf2_myapp) un file e aggiungere questi contenuti:

/path/to/your/symfony_app/app/logs/prod.log { 
     daily 
     missingok 
     rotate 14 
     compress 
} 

Si dovrebbe cercare logrotate su Google per maggiori informazioni

+0

non sono necessari se si ruota solo un file e non si utilizzano script (come un postrotate). – mpeters

+4

e se si desidera forzare manualmente la rotazione dopo aver creato questo file di configurazione, eseguire 'logrotate --force/etc/logrotate.d/sf2_myapp' –

+0

@mpeters: grazie, ho rimosso" sharedscripts " – loicfavory

Problemi correlati