Skip to content

Commit 76adb4e

Browse files
committed
Fix up config for nesting level on debug output
1 parent 03a655e commit 76adb4e

3 files changed

Lines changed: 11 additions & 6 deletions

File tree

docs/en/index.rst

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,9 @@ Configuration
6464

6565
* ``DebugKit.ignoreAuthorization`` - Set to true to ignore Cake Authorization plugin for DebugKit requests. Disabled by default.
6666

67+
* ``DebugKit.maxDepth`` - Defines how many levels of nested data should be shown in general for debug output. Default is 5.
68+
WARNING: Increasing the max depth level can lead to an out of memory error.::
69+
6770
* ``DebugKit.variablesPanelMaxDepth`` - Defines how many levels of nested data should be shown in the variables tab. Default is 5.
6871
WARNING: Increasing the max depth level can lead to an out of memory error.::
6972

src/Panel/RequestPanel.php

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
*/
1515
namespace DebugKit\Panel;
1616

17+
use Cake\Core\Configure;
1718
use Cake\Error\Debugger;
1819
use Cake\Event\EventInterface;
1920
use DebugKit\DebugPanel;
@@ -43,15 +44,15 @@ public function shutdown(EventInterface $event): void
4344
} catch (Exception $e) {
4445
$value = "Could not serialize `{$attr}`. It failed with {$e->getMessage()}";
4546
}
46-
$attributes[$attr] = Debugger::exportVarAsNodes($value);
47+
$attributes[$attr] = Debugger::exportVarAsNodes($value, Configure::read('DebugKit.maxDepth', 5));
4748
}
4849

4950
$this->_data = [
5051
'attributes' => $attributes,
51-
'query' => Debugger::exportVarAsNodes($request->getQueryParams()),
52-
'data' => Debugger::exportVarAsNodes($request->getData()),
53-
'cookie' => Debugger::exportVarAsNodes($request->getCookieParams()),
54-
'get' => Debugger::exportVarAsNodes($_GET),
52+
'query' => Debugger::exportVarAsNodes($request->getQueryParams(), Configure::read('DebugKit.maxDepth', 5)),
53+
'data' => Debugger::exportVarAsNodes($request->getData(), Configure::read('DebugKit.maxDepth', 5)),
54+
'cookie' => Debugger::exportVarAsNodes($request->getCookieParams(), Configure::read('DebugKit.maxDepth', 5)),
55+
'get' => Debugger::exportVarAsNodes($_GET, Configure::read('DebugKit.maxDepth', 5)),
5556
'matchedRoute' => $request->getParam('_matchedRoute'),
5657
'headers' => [
5758
'response' => headers_sent($file, $line),

src/Panel/SessionPanel.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
*/
1515
namespace DebugKit\Panel;
1616

17+
use Cake\Core\Configure;
1718
use Cake\Error\Debugger;
1819
use Cake\Event\EventInterface;
1920
use DebugKit\DebugPanel;
@@ -34,7 +35,7 @@ public function shutdown(EventInterface $event): void
3435
/** @var \Cake\Http\ServerRequest|null $request */
3536
$request = $event->getSubject()->getRequest();
3637
if ($request) {
37-
$content = Debugger::exportVarAsNodes($request->getSession()->read());
38+
$content = Debugger::exportVarAsNodes($request->getSession()->read(), Configure::read('DebugKit.maxDepth', 5));
3839
$this->_data = compact('content');
3940
}
4041
}

0 commit comments

Comments
 (0)