2009-12-18 4 views
11

Je voudrais configurer un fichier journal supplémentaire dans symfony, de sorte que certains messages (traitement de paiement dans mon cas) iraient dans un fichier différent du reste de symfony. C'est possible?Plusieurs fichiers journaux dans symfony

Voilà ma configuration actuelle du journal de factories.yml:

all: 
    logger: 
    param: 
     level: debug 
     loggers: 
     sf_file_debug: 
      param: 
      level: notice 
      file: /var/log/symfony/%SF_ENVIRONMENT%/%SF_APP%.log 

Répondre

0

Vérifiez le plug-in: sfAdvancedLoggerPlugin. Vous pouvez faire beaucoup de choses de connexion avec elle.

sfAdvancedLogger permettre la fonctionnalité de journalisation avancée comme des erreurs PHP journalisation , alertes e-mail et l'exploitation forestière conditionnelle

1
all: 
    logger: 
    class: sfAggregateLogger 
    param: 
     level: debug 
     loggers: 
     sf_file_debug: 
      class: sfFileLogger 
      param: 
      level: debug 
      file: %SF_LOG_DIR%/%SF_APP%_%SF_ENVIRONMENT%.log 
     sf_file_debug_additional: 
      class: sfFileLogger 
      param: 
      level: debug 
      file: %SF_LOG_DIR%/%SF_APP%_%SF_ENVIRONMENT%_additional.log 
11

solution de daviweb enregistrera des messages à la fois les fichiers journaux,

nouvel enregistreur séparé peut être créé en utilisant le code:

$logPath = sfConfig::get('sf_log_dir').'/your-custom.log'; 
$custom_logger = new sfFileLogger(new sfEventDispatcher(), array('file' => $logPath)); 

$custom_logger->info("My log message!"); 
+1

L'important ici est de créer une nouvelle instance de Dispatcher Envent. Si vous référencez le répartiteur d'événements par défaut du contrôleur, tous vos journaux iront dans votre fichier journal personnalisé. – Dziamid

Questions connexes