Как изменить файлы журнала PSR как только один в день - PullRequest
0 голосов
/ 21 мая 2019

Я использовал PSR logger для получения логов.Но это создаст только один файл для всех дат.Мне нужно получить отдельные файлы журналов для каждой даты.Как это сделать?

    require_once '../../logger/vendor/autoload.php';
    require_once '../../logger/Psr/Log/Logger.php';
    use Katzgrau\KLogger\Logger;
    use Psr\Log\LogLevel;


    $logPath = '/var/www/html/logs';
    $logger = new Logger($logPath, LogLevel::DEBUG, array ( 'filename' => 'driver_api' , 'extension' => 'log' ));
    $logger->log( $level,  $message , $context);

`

1 Ответ

0 голосов
/ 24 мая 2019

использовать ротатор журнала

protected function log_rotate($logpath, $filename, $extention){
    $logfilename = $logpath.'/'.$filename.'.'.$extention; //not needed when included
    $logfilestokeep = 15;
    $fileDate = '';



    if (file_exists($logfilename)) {
        if (date("Y-m-d", filemtime($logfilename)) !== date('Y-m-d')) {
            $fileDate = date("Y-m-d", filemtime($logfilename));
            $newName = $logpath .'/'.$filename. "_" . $fileDate.'.'.$extention;

            if (file_exists($logfilename)) {
                rename($logfilename, $newName);
            }

        }
    }
}
...