laravel设置日志为每天产生一个日志文件,现有有个问题,日志文件太大,动不动就20多M,有什么方法能让它自动切割,大于2m就生成一个新的日志文件呢?
这种情况下建议不使用Laravel自己的日志切割,使用Linux系统的logrotate
进行日志切割
/webroot/laravel.log {
size=2M
rotate 100
missingok
notifempty
sharedscripts
delaycompress
}
你需要配置这几项
'log' => env('APP_LOG', 'daily'),
'log_level' => env('APP_LOG_LEVEL', 'debug'),
'log_max_files' => 30,
我不是很清楚
laravel
他自己有没有自带的这种功能针对这种需求一般的做法就是写个
daemon
或者定时脚本实时监控日志文件,然后把旧的打包,生成新的日志文件其实一般更常见的做法不是按文件大小处理日志而是按时间,比如每天晚上
12
点将当天的日志打包,生成空的新日志文件,并且隔一段时间清理一些旧的日志文件,至于这些尺度可以自己定制化