Lumen 日志自定义

大家肯定有碰到过查看日志错误信息时不知道具体是在哪个文件哪一行出错,该方法能详细的显示出错误的具体文件信息与行数,给有需要的人使用

默认日志
[2018-04-11 10:25:29.313456] local.INFO: 我是来测试日志的
1、在Providers目录建立LogServiceProvider.php文件 代码如下
<?php
namespace App\Providers;

use Carbon\Laravel\ServiceProvider;
use Monolog\Formatter\LineFormatter;
use Monolog\Handler\RotatingFileHandler;
use Monolog\Processor\IntrospectionProcessor;

class LogServiceProvider extends ServiceProvider
{
    public function boot()
    {
        $handlers[] = (new RotatingFileHandler(storage_path('logs/lumen.log'), 0))
            ->pushProcessor(new IntrospectionProcessor())
            ->setFormatter(new LineFormatter(null, null, true, true));

        $this->app['log']->setHandlers($handlers);
    }
}
2、在bootstrap/app.php注册该服服
    $app->register(App\Providers\LogServiceProvider::class);
3、使用测试
    app('log')->info('我是测试日志');
4、生成的日志信息
[2018-04-11 10:25:29.313456] local.INFO: 我是来测试日志的 {"content":1111} {"pid":1340,"file":"App\\Http\\Controllers\\TestController->log:20","line":20,"ip":"127.0.0.1"}
[2018-04-11 10:25:29.317710] local.DEBUG: 我是来测试日志的  {"pid":1340,"file":"App\\Http\\Controllers\\TestController->log:21","line":21,"ip":"127.0.0.1"}
[2018-04-11 10:25:29.320648] local.ERROR: 我是来测试日志的  {"pid":1340,"file":"App\\Http\\Controllers\\TestController->log:22","line":22,"ip":"127.0.0.1"}
[2018-04-11 10:25:29.324702] local.WARNING: 我是来测试日志的  {"pid":1340,"file":"App\\Http\\Controllers\\TestController->log:23","line":23,"ip":"127.0.0.1"}
本作品采用《CC 协议》,转载必须注明作者和本文链接
994914376
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!