Laravel中如何给mongodb查询添加日志输出

给mongodb添加查询日志输出方法非常简单,可以像下面这样添加

1
2
DB::connection('mongodb')->enableQueryLog();
DB::connection('mongodb')->getQueryLog();

mongodb”的配置是在database.php中配置的

1
2
3
4
5
'mongodb' => [
'driver' => 'mongodb',
'dsn' => env('MONGODB_DSN'),
'database' => env('MONGODB_DATABASE'),
],

为什么要加这段代码之后才会有日志输出呢

原因是因为默认的情况下,laravel只针对默认的数据库配置进行日志输出

可以尝试打开config/database.php文件,找到类似下面这行

1
'default' => env('DB_CONNECTION', 'mysql'),

默认情况下执行的是下面的代码

1
2
DB::enableQueryLog();
DB::getQueryLog();

既然是默认获取的也是默认的数据库配置查询

参考:参考1