原生的laravel日志有2个问题导致非常难以使用
1是因为默认保存堆栈信息,导致日志很长,时间长了之后没法看
2是不能很方便的实现每种错误类型保存到一个文件
百度到的方法 感觉都不够简单 参考一些教程 自己琢磨出了一套解决办法 个人感觉很好用
如下所示写一个类
<?php
namespace App\Libraries;
use Monolog\Logger;
use Illuminate\Log\Writer;
class BLogger
{
public static function __callStatic($name,$arguments) {
$log= new Writer(new Logger(config('app.env')));
$log->useDailyFiles(storage_path().'/logs/'. $name .'.log', 30);//每个错误类型一个文件
$log->$name($arguments[0]);
}
}
使用方法跟原生的一样也非常简单,例如
BLogger->info('文件不存在');
BLogger->error('文件不存在');
如上所示系统会分别在logs目录下生成error-2017-10-22.log文件 以及info-2017-10-22.log 2个文件
关于laravel如何使用自己定义的类 请自行百度相关教程