1. Go to this page and download the library: Download elminson/db-logger library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
use Elminson\DbLogger\DatabaseQueryLogger;
use Illuminate\Database\Capsule\Manager as DB;
// Initialize the logger
$logger = new DatabaseQueryLogger([
'enabled' => true,
'console_output' => true,
'file_logging' => true,
'log_file' => storage_path('logs/queries.log'),
'log_format' => 'text', // or 'json'
'log_rotation_enabled' => false, // or true
'log_rotation_period' => 'daily', // or 'weekly'
'log_rotation_max_files' => 7
]);
// Log a query
$query = DB::table('users')->where('email', '[email protected]');
$logger->logQuery($query);
use PDO;
use PDOStatement;
$pdo = new PDO('sqlite::memory:');
$stmt = $pdo->prepare('SELECT * FROM users WHERE email = :email');
$stmt->bindParam(':email', '[email protected]');
$logger->logQuery($stmt, ['[email protected]']);
$sql = 'SELECT * FROM users WHERE email = ?';
$bindings = ['[email protected]'];
$logger->logQuery($sql, $bindings, $connection);
use Illuminate\Support\Facades\DB;
use Elminson\DbLogger\DatabaseQueryLogger;
public function boot()
{
$logger = new DatabaseQueryLogger(config('db-logger'));
DB::listen(function ($query) use ($logger) {
$logger->logQuery(
$query->sql,
$query->bindings,
$query->connection
);
});
}