尊龙凯时人生就是搏

laravel写日志要领

laravel 是一款很是盛行的 php 开发框架,其无邪和强盛的功效获得了宽大开发者的青睐。在应用开发历程中,纪录日志是很是主要的一项事情,这样可以资助开发职员快速定位息争决问题。本文将先容 laravel 写日志的要领。

设置日志信息

Laravel 中的日志设置信息存放在 config 目录下的 logging.php 文件中。在该文件中界说了默认的日志驱动和 Log channel(日志通道)。

可以凭证需要,自界说日志驱动和 Log channel。最常见的日志驱动类型包括:单个文件和逐日日志文件。其中,单个文件模式将所有日志纪录到一个文件中,而逐日日志文件模式则会由于天天的日期而建设新的日志文件。

在设置文件中选择日志驱动类型之后,我们还需要设置 Log channel,以便在应用程序中纪录日志时使用。

使用 Log Facade 写日志

Laravel 提供了一个 Log Facade,提供了纪录日志的要领,使我们可以轻松地将日志信息纪录到日志文件中。直接使用 Log:: 来挪用 Log Facade,使用 info() 或者 debug() 纪录日志信息即可。如下所示:

use IlluminateSupportFacadesLog;

// 纪录 Info 级别的日志信息
Log::info('This is an info level message.');

// 纪录 Debug 级别的日志信息
Log::debug('This is a debug level message.');

登录后复制

可以在日志设置文件中界说差别的 Log channel,并设置差别的处理器(Handlers),以便将日志信息存储到差别的位置。

如下所示:

use IlluminateSupportFacadesLog;

// 使用 MyLog 通道纪录 Info 级别的日志信息
Log::channel('MyLog')->info('This is an info level message.');

// 使用 MyLog 通道纪录 Debug 级别的日志信息
Log::channel('MyLog')->debug('This is a debug level message.');

登录后复制

使用 Monolog 写日志

Monolog 是 PHP 中的一款强盛的日志工具,Laravel 使用 Monolog 作为其日志组件。Monolog 提供了多种处理器和名堂器,允许我们对日志举行越发详尽的设置。

在 Laravel 中,我们可以使用 Monolog 来处理并纪录日志信息。Laravel 通过容器绑定实现了 Monolog 的封装。我们可以通过容器绑定自界说 Monolog 实例,并命名每个实例,以便在应用程序中引用它。

如下所示,我们可以在 AppServiceProvider 中绑定一个新的 Monolog 实例:

use MonologLogger;
use MonologHandlerStreamHandler;

public function register()
{
    $this->app->bind('myLogger', function () {
        $log = new Logger('myLog');
        $log->pushHandler(new StreamHandler(storage_path('logs/myLog.log')), Logger::INFO);
        return $log;
    });
}

登录后复制

然后,在应用程序中使用该实例纪录日志信息。如下所示:

use IlluminateSupportFacadesLog;

Log::channel('myLogger')->info('This is an info level message.');

登录后复制

除了使用默认的日志设置文件,我们还可以使用自界说的日志设置文件来设置 Monolog。如下所示,在自界说日志设置文件中使用 Monolog 的 addRecord() 要领添加日志信息:

use MonologLogger;

return [
    'myLog' => [
        'driver' => 'monolog',
        'level' => 'debug',
        'handler_with' => [
            [
                'handler' => StreamHandler::class,
                'options' => [
                    'level' => Logger::INFO,
                    'stream' => storage_path('logs/mylog.log'),
                    'bubble' => true
                ]
            ]
        ],
        'tap' => [MyLogChannel::class]
    ]
];

登录后复制

需要注重,这里的 tap 设置为自界说 Log channel 实例。我们必需在应用程序中注册该实例,以便可以使用该实例来纪录日志信息。

总结

在 Laravel 中,纪录日志是应用程序开发的须要事情。通过对日志设置文件的设置和使用 Log Facade 和 Monolog,我们可以很容易地纪录日志信息并对其举行处理。

虽然,这里只先容了 Laravel 写日志的最基本要领,若是需要更深入的相识,可以审查 Laravel 官方文档或搜索相关资料。

以上就是laravel写日志要领的详细内容,更多请关注本网内其它相关文章!

免责说明:以上展示内容泉源于相助媒体、企业机构、网友提供或网络网络整理,版权争议与本站无关,文章涉及看法与看法不代表尊龙凯时人生就是搏滤油机网官方态度,请读者仅做参考。本文接待转载,转载请说明来由。若您以为本文侵占了您的版权信息,或您发明该内容有任何涉及有违公德、冒犯执法等违法信息,请您连忙联系尊龙凯时人生就是搏实时修正或删除。

相关新闻

联系尊龙凯时人生就是搏

18523999891

可微信在线咨询

事情时间:周一至周五,9:30-18:30,节沐日休息

QR code
sitemap网站地图