Bonjour amis du beau code,

Je travaille sur un script d'import et je logue les événements dans monologue.
J'ai définit un channel qui me permet d'avoir mes logs dans la sortie std et dans un fichier log spécifique.

config.yml
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
monolog:
    channels: ['import_modeles_channel']
    handlers:
        import_modeles:
            channels: ['import_modeles_channel']
            type:     stream
            path:     '%kernel.logs_dir%/import_modeles.log'
        import_modeles_console:
            channels: ['import_modeles_channel']
            type:     console
Dans la commande je peux logger

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
class ImportModelsCommand extends AbstractCommand
{
    /** @var Logger  */
    private $logger;  
 
    protected function execute(InputInterface $input, OutputInterface $output)
    {
        /** @var Logger logger */
        $this->logger = $this->getContainer()->get('monolog.logger.import_modeles_channel');
 
        $this->logger->debug('===========');
        $this->logger->debug(date('Y-m-d H:i.s'));
 
      // Tests
        $this->logger->alert('alert');
        $this->logger->critical('critical');
        $this->logger->emergency('emergency');
        $this->logger->error('error');
        $this->logger->warning('warning');
        $this->logger->notice('notice'); // -v
        $this->logger->info('info'); // -vv
        $this->logger->debug('debug'); // -vvv
        // -q RIEN !
 
        // dododooodoodoooo
    }
}
Seulement voila. Tous mes logs s'entassent dans '%kernel.logs_dir%/import_modeles.log'

Et j'aurais bien aimé que mon script génère un nouveau fichier à chaque exécution.
Et que je puisse récupéré ce fichier à la fin pour l'envoyer par email..

Comment on fait ça ?

Code : Sélectionner tout - Visualiser dans une fenêtre à part
$logger->setLogFile($logDir.'import.'.date('Y-m-d_h-i-s').'.log'); // Truc qui n'existe pas ....
Merci pour votre aide

Je suis en symfony ~2.7