You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Daniel Seifert 2b6ab8f809
adjust CHANGELOG
3 weeks ago
example improve code 1 month ago
img remove Query Status Monitor, complete implementation 2 years ago
src fix empty default parameter argument error 3 weeks ago
.gitattributes change line endings for easy patching 2 years ago
.gitignore Initial commit 3 years ago
CHANGELOG.md adjust CHANGELOG 3 weeks ago
LICENSE Initial commit 3 years ago
README.md adjust documentation 2 years ago
composer.json fix non https url in composer.json 2 years ago

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:

Example all sqls

CLI:

Example 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.