Skip to content

mitoop/laravel-query-logger

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Laravel Query Logger

🔮 记录 SQL 执行日志

安装

composer require mitoop/laravel-query-logger

配置

config/logging.php 中添加一下日志频道配置

<?php

return [
    'channels' => [
        // 其他日志频道配置...      
        'sql' => [
            'driver' => 'daily',
            'path' => storage_path('logs/sql.log'),
            'level' => env('LOG_LEVEL', 'debug'),
            'permission' => 0664,
        ],
    ],

    // 新增日志记录配置
    'query' => [
        'enabled' => env('ENABLE_QUERY_LOG', false), // [总开关] 是否启用 SQL 查询日志
        'channel' => 'sql', // 配置日志记录频道
        'excluded_tables' => ['telescope_'] // 排除表,支持表名前缀匹配
    ]
];

使用

默认行为

当启用 SQL 查询日志(query.enabled 为 true)时,包默认会记录所有的 SQL 查询日志。你无需做额外配置。

自定义触发条件

AppServiceProviderboot 方法中,你可以设置自定义的 SQL 查询日志记录触发条件。

自定义触发条件后,SQL 日志将仅在 总开关自定义触发条件 都为 true 时才会被记录。

示例:自定义触发条件

public function boot()
{
     // 设置自定义触发条件
     Condition::using(function () {
         return is_local() || is_dev() || request()->hasCookie('debug_sql');
     });
}

About

There might be a problem if you don't see sql.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages