`

laravel日志的添加使用

阅读更多

        开始学laravel,我们一般都需要记录系统的运行日志,所以就看了下如何记录日志,特此分享:

 

1)Laravel 默认为应用程序建立每天的日志文件在 storage/logs 目录。你可以像这样把信息写到日志:

 

首先 , 在控制器层 写如  :   use Log;

在你的每个方法中写入: 

Log::info('This is some useful information.');

之后回到目录   /storage/logs/laravel-{当天日期}.log中看一看是否已经存到日志中。

 

2)添加执行系统运行的sql日志信息

AppServiceProvider.php 

首先,需要引入

use DB;

use Monolog\Logger;

use Monolog\Handler\StreamHandler;

 

再修改 boot()方法,添加以下代码:

 

 DB::listen(function($sql, $bindings, $time) {

           // echo 'SQL语句执行:'.$sql.',参数:'.json_encode($bindings).',耗时:'.$time.'ms';

           $log = new Logger('sql_log');

           $logDir = storage_path('logs/sql');    //storage\logs\sql

             if (!is_dir($logDir)) {

                  mkdir($logDir, 0777, true);

            }

           /* $param = '[';

           foreach($bindings as $x=>$x_value) {

               $param = $param.$x_value.',';

            }

           $param.']';*/

           $log->pushHandler(new StreamHandler($logDir . '/' . date('Y-m-d') . '.log', Logger::DEBUG));

           $log->addInfo('SQL语句执行:'.$sql.',参数:'.'['.join(", ",$bindings).']'.',耗时:'.$time.'ms');

        });

此时,系统中运行的sql语句就记录下来,不需要在手动的编写写入文件。

分享到:
评论

相关推荐

    LogHTTPrequests在Laravel应用中记录HTTP请求

    Laravel允许你定义自己的日志处理器,或者使用现有的处理器,如`Monolog`,来定制日志输出格式。在`config/logging.php`中,你可以指定使用哪个处理器,并配置其参数。 使用`spatie/laravel-http-logger`,开发者...

    Laravel开发-laravel-slack-log

    6. **配置与安装**:使用laravel-slack-log首先需要在Composer中安装依赖,然后在Laravel的配置文件中添加Slack通知通道的设置,包括Webhook URL(在Slack的工作区中生成)和其他自定义选项。 7. **使用示例**:在...

    laralog:Laravel日志

    **laralog:Laravel日志** 在 Laravel 框架中,日志系统是一个至关重要的组件,它允许开发者记录应用程序中的各种事件、错误和调试信息。laralog 是一个专门针对 Laravel 日志功能进行扩展和增强的工具,它旨在提供...

    Laravel开发-log-reader

    Laravel 默认使用 Monolog 库来处理日志,支持多种日志级别,如 DEBUG、INFO、NOTICE、WARNING、ERROR、CRITICAL、ALERT 和 EMERGENCY。这些级别的使用有助于区分不同严重程度的问题,便于开发者优先处理。 ### 2. ...

    LaravelWebSockets为Laravel应用添加WebSockets功能

    本文将深入探讨如何使用LaravelWebSockets为Laravel应用程序添加WebSockets功能,使其能够实现实时数据传输,提高用户体验。 首先,我们需要理解LaravelWebSockets的基本概念。LaravelWebSockets是一款开源的...

    Laravel开发-firebase-laravel

    在本文中,我们将深入探讨如何在Laravel框架中集成Firebase,特别是使用Firebase的REST API进行交互。Firebase是一款由Google提供的实时云数据库和消息推送服务,它允许开发者构建实时、跨平台的应用程序。Laravel...

    Laravel开发-laravel-sls

    在本文中,我们将深入探讨如何在Laravel框架中集成阿里云Simple Log Service(SLS),以便高效地管理和处理应用程序的日志。"Laravel开发-laravel-sls"项目旨在为开发者提供一个便捷的方式来将Laravel应用的日志记录...

    laravel-logging:使用上下文信息丰富laravel日志

    丰富的Laravel测井使用Laravel上下文丰富独白日志安装在config/logging.php中将Logger添加为“ tap”替代。 return [ // ... 'single' => [ 'driver' => 'single' , 'path' => storage_path ( 'logs/laravel.log' ),...

    Laravel开发-laravel-papertrail

    Laravel 默认使用 Monolog 处理日志,Monolog 支持多种日志处理方式,如文件、邮件、数据库等。`laravel-papertrail` 包就是扩展了 Monolog,增加了对 PaperTrail 的支持。 **3. 配置 Laravel 使用 PaperTrail** ...

    Laravel开发-laravel-log-viewer

    Laravel日志系统: 1. 日志级别:Laravel支持多种日志级别,包括`debug`、`info`、`notice`、`warning`、`error`、`critical`、`alert` 和 `emergency`。根据问题的严重程度,开发者可以选择合适的级别记录日志。 2...

    laravel-log-reader:一个简单而美丽的laravel日志阅读器

    【laravel-log-reader】是一个专为Laravel框架设计的日志查看工具,它的主要目标是提供一个直观且美观的界面,以便开发者能够...如果你正在使用Laravel并希望提升日志查看体验,那么laravel-log-reader绝对值得尝试。

    Laravel开发-laravel-log

    在Laravel框架中,日志记录是一个至关重要的部分,它帮助开发者追踪应用程序的运行状态,记录错误信息,以及调试代码。Laravel的`log`组件是其强大的工具之一,允许开发者方便地记录不同级别的信息,如debug、info、...

    laravel-log-viewer:Laravel日志查看器

    Laravel日志查看器TL; DR 适用于Laravel 5、6、7和8(仍与4.2兼容)和流明的Log Viewer。 使用composer安装,创建到LogViewerController的路由。 没有公共资产,没有供应商路线,可以使用和/或不使用日志轮换。 受...

    Laravel开发-laravel-ldap

    下面我们将深入探讨如何在 Laravel 项目中使用这个包以及它提供的功能。 1. **安装与配置** 使用 Composer 安装 `laravel-ldap` 包: ``` composer require spatie/laravel-ldap-authentication ``` 随后,在 ...

    Laravel开发-monolog-mysql

    "Laravel 开发 - Monolog - MySQL" 主要涉及的是在 Laravel 应用中使用 Monolog 自定义 MySQL 驱动进行日志记录。通过这个驱动,你可以将原本存储在文件中的日志数据安全地保存到数据库中,便于长期存储和查询。同时...

    Laravel开发-logwriter

    在这个`laravel-log-writer-master`压缩包中,你将找到一个专门用于定制Laravel日志行为的包。 首先,让我们了解一下Laravel的日志系统。Laravel默认使用Monolog库来处理日志,它可以将日志信息写入到文件、数据库...

    Laravel开发-laravel-database-monologger

    默认情况下,Laravel使用单个日志通道,这个通道可能指向一个文件,如`storage/logs/laravel.log`。`laravel-database-monologger` 插件就是为了让开发者能够轻松地添加一个新的日志通道,这个通道将日志记录到...

    Laravel开发-laravel-logs-rotate

    默认情况下,Laravel使用`single`驱动将所有日志信息写入到`storage/logs/laravel.log`文件中。你可以通过修改`config/logging.php`配置文件来选择不同的日志驱动。 ### 2. 文件日志旋转 日志文件旋转是指定期或当...

    Laravel开发-raven-laravel

    要在 Laravel 项目中使用 Raven-Laravel,首先需要在 `composer.json` 文件中添加依赖,并执行 `composer install` 命令来安装: ```json { "require": { "raven/raven": "~1.0", " BeyondCode/laravel-raven": ...

    Laravel开发-databaselogger

    接下来,我们可以像使用任何其他Laravel日志驱动器一样使用新的'database'驱动器。Laravel的日志门面`Log`可以用来记录日志: ```php use Illuminate\Support\Facades\Log; Log::channel('database')->info('This ...

Global site tag (gtag.js) - Google Analytics