example | ||
img | ||
src | ||
.gitattributes | ||
.gitignore | ||
.php-cs-fixer.php | ||
CHANGELOG.md | ||
composer.json | ||
LICENSE | ||
phpstan.neon | ||
README.md |
Oxid eShop SQL Logger
Returns all SQL queries into console of a Browser.
Install
composer require --dev d3/oxid-sql-logger
Usage
Just set the function D3StartSQLLog()
somewhere and from that point on all SQLs will be logged.
\D3StartSQLLog('specific log message');
$db = \OxidEsales\Eshop\Core\DatabaseProvider::getDb(\OxidEsales\Eshop\Core\DatabaseProvider::FETCH_MODE_ASSOC);
$list = $db->getAll('SELECT * FROM oxarticles WHERE oxprice < ? LIMIT 100', [49.99]);
\D3StopSQLLog();
Screenshots
Browser:
CLI:
Configuration
Add the sections to the config.inc.php of the shop if needed:
$this->SqlLoggerGUIHandlers = [
\Monolog\Handler\BrowserConsoleHandler::class,
\D3\OxidSqlLogger\Handler\d3FirePHPHandler::class
];
Standard handlers are BrowserConsoleHandler and d3FirePHPHandler.
$this->SqlLoggerCLIHandlers = [
...
];
Standard handler is StreamHandler.
$this->d3FirePHPOptions = [
\D3\OxidSqlLogger\Handler\d3FirePHPHandler::ADD_TRACE
];
Credits
Many thanks to Tobias Matthaiou for his inspiration.