Skip to content

Commit 4bd6301

Browse files
Don't enable tracing unless the profiler is enabled
1 parent 962751f commit 4bd6301

File tree

4 files changed

+19
-0
lines changed

4 files changed

+19
-0
lines changed

DependencyInjection/FrameworkExtension.php

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -106,6 +106,7 @@
106106
use Symfony\Component\HttpKernel\DataCollector\DataCollectorInterface;
107107
use Symfony\Component\HttpKernel\DependencyInjection\Extension;
108108
use Symfony\Component\HttpKernel\Log\DebugLoggerConfigurator;
109+
use Symfony\Component\HttpKernel\Profiler\ProfilerStateChecker;
109110
use Symfony\Component\JsonStreamer\Attribute\JsonStreamable;
110111
use Symfony\Component\JsonStreamer\JsonStreamWriter;
111112
use Symfony\Component\JsonStreamer\StreamReaderInterface;
@@ -963,6 +964,11 @@ private function registerProfilerConfiguration(array $config, ContainerBuilder $
963964
$loader->load('collectors.php');
964965
$loader->load('cache_debug.php');
965966

967+
if (!class_exists(ProfilerStateChecker::class)) {
968+
$container->removeDefinition('profiler.state_checker');
969+
$container->removeDefinition('profiler.is_disabled_state_checker');
970+
}
971+
966972
if ($this->isInitializedConfigEnabled('form')) {
967973
$loader->load('form_debug.php');
968974
}

Resources/config/debug.php

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@
2525
service('debug.stopwatch'),
2626
service('logger')->nullOnInvalid(),
2727
service('.virtual_request_stack')->nullOnInvalid(),
28+
service('profiler.is_disabled_state_checker')->nullOnInvalid(),
2829
])
2930
->tag('monolog.logger', ['channel' => 'event'])
3031
->tag('kernel.reset', ['method' => 'reset'])

Resources/config/profiling.php

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
use Symfony\Component\HttpKernel\EventListener\ProfilerListener;
1717
use Symfony\Component\HttpKernel\Profiler\FileProfilerStorage;
1818
use Symfony\Component\HttpKernel\Profiler\Profiler;
19+
use Symfony\Component\HttpKernel\Profiler\ProfilerStateChecker;
1920

2021
return static function (ContainerConfigurator $container) {
2122
$container->services()
@@ -56,5 +57,15 @@
5657
->set('.virtual_request_stack', VirtualRequestStack::class)
5758
->args([service('request_stack')])
5859
->public()
60+
61+
->set('profiler.state_checker', ProfilerStateChecker::class)
62+
->args([
63+
service_locator(['profiler' => service('profiler')->ignoreOnUninitialized()]),
64+
param('kernel.runtime_mode.web'),
65+
])
66+
67+
->set('profiler.is_disabled_state_checker', 'Closure')
68+
->factory(['Closure', 'fromCallable'])
69+
->args([[service('profiler.state_checker'), 'isProfilerDisabled']])
5970
;
6071
};

Resources/config/validator_debug.php

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
->decorate('validator', null, 255)
2121
->args([
2222
service('debug.validator.inner'),
23+
service('profiler.is_disabled_state_checker')->nullOnInvalid(),
2324
])
2425
->tag('kernel.reset', [
2526
'method' => 'reset',

0 commit comments

Comments
 (0)