8
0
oxid-sql-logger/README.md

63 Zeilen
1.4 KiB
Markdown

2019-08-21 00:36:20 +02:00
Oxid eShop SQL Logger
---------------------
2019-08-20 23:34:33 +02:00
2019-08-21 00:43:33 +02:00
Returns all SQL queries into console of a Browser.
2019-08-20 23:34:33 +02:00
## Install
2019-09-20 16:05:36 +02:00
`composer require --dev d3/oxid-sql-logger`
2019-08-20 23:34:33 +02:00
## Usage
2019-09-20 16:05:36 +02:00
Just set the function `D3StartSQLLog()` somewhere and from that point on all SQLs will be logged.
2019-08-21 00:36:20 +02:00
2019-08-20 23:34:33 +02:00
```php
2019-09-20 16:05:36 +02:00
\D3StartSQLLog('specific log message');
2019-08-20 23:34:33 +02:00
$db = \OxidEsales\Eshop\Core\DatabaseProvider::getDb(\OxidEsales\Eshop\Core\DatabaseProvider::FETCH_MODE_ASSOC);
2019-08-21 00:36:20 +02:00
$list = $db->getAll('SELECT * FROM oxarticles WHERE oxprice < ? LIMIT 100', [49.99]);
2019-08-20 23:34:33 +02:00
2019-09-20 16:05:36 +02:00
\D3StopSQLLog();
2019-08-20 23:34:33 +02:00
```
2019-08-21 00:36:20 +02:00
## Screenshots
2019-08-21 08:15:58 +02:00
Browser:
2019-09-23 08:38:19 +02:00
![Example all sqls](https://raw.githubusercontent.com/d3datadevelopment/oxid-sql-logger/master/img/screenshot-a.jpg)
2019-08-21 00:36:20 +02:00
2019-08-21 08:15:58 +02:00
CLI:
2019-09-23 08:38:19 +02:00
![Example CLI](https://raw.githubusercontent.com/d3datadevelopment/oxid-sql-logger/master/img/screenshot-cli.jpg)
2019-08-21 08:15:58 +02:00
2021-03-02 15:50:39 +01:00
## Configuration
Add the sections to the config.inc.php of the shop if needed:
```php
$this->SqlLoggerGUIHandlers = [
\Monolog\Handler\BrowserConsoleHandler::class,
\D3\OxidSqlLogger\Handler\d3FirePHPHandler::class
];
```
Standard handlers are BrowserConsoleHandler and d3FirePHPHandler.
```php
$this->SqlLoggerCLIHandlers = [
...
];
```
Standard handler is StreamHandler.
```php
$this->d3FirePHPOptions = [
\D3\OxidSqlLogger\Handler\d3FirePHPHandler::ADD_TRACE
];
```
2019-09-23 08:45:00 +02:00
## Credits
Many thanks to [Tobias Matthaiou](https://github.com/TumTum/oxid-sql-logger) for his inspiration.