Php 如何将PSR日志文件更改为每天仅一个
我使用PSR记录器获取日志。但它只会为所有日期创建一个文件。我需要为每个日期获取单独的日志文件。怎么做Php 如何将PSR日志文件更改为每天仅一个,php,logging,psr-0,Php,Logging,Psr 0,我使用PSR记录器获取日志。但它只会为所有日期创建一个文件。我需要为每个日期获取单独的日志文件。怎么做 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/lo
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);
`使用原木旋转器
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);
}
}
}
}
也许您可以使用log rotate做一些有趣的事情,但是为了便于修复,为什么不在文件名'filename'=>'driver_api'的末尾添加日期呢。日志旋转的数据(“d-m-Y”)检查这个@ElenaRoman谢谢你的想法。但是我需要保留今天的日志文件,没有日期。就像Apache错误日志一样。你对此有什么建议吗?