最近做了一个微信项目,使用yii2框架的日志插件进行写日志操作
$log = new \yii\log\FileTarget();
$log->logFile = $sLogDir3.date('Ymd').'_'.$logFile;
$log->messages[] = [$message,4,$app,time()];
$log->export();
倒是出现如图的错误
文件超过10M后就自动分为多个文件。
以前没有遇到过,表示一脸蒙那啥,在网上找了很多资料后无果。
无奈只能自己打开yii源码进行研究。发现FileTarget里面规定了默认的
文件大小和文件个数
/**
* @var integer maximum log file size, in kilo-bytes. Defaults to 10240, meaning 10MB.
*/
public $maxFileSize = 102400; // in KB
/**
* @var integer number of log files used for rotation. Defaults to 5.
*/
public $maxLogFiles = 5;
so,我就在配置文件里面改了这两个参数的配置
'log' => [
'traceLevel' => YII_DEBUG ? 3 : 0,
'targets' => [
[
'class' => 'yii\log\FileTarget',
'levels' => ['error', 'warning','info'],
'logFile' => "@app/runtime/logs/".date('Y/m/', time())."/".date('Ymd', time())."_app.log",
'maxFileSize'=>'10240000',
'maxLogFiles'=>5,
'logVars'=>['']
],
],
],
到此,问题完美解决了