diff --git a/CHANGELOG.md b/CHANGELOG.md index 94a2851f..2fe664ca 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,7 @@ ### Added - Support for BatchClient +- The stopwatch plugin in included by default when using profiling. ### Changed diff --git a/DependencyInjection/HttplugExtension.php b/DependencyInjection/HttplugExtension.php index f1b78988..514c522f 100644 --- a/DependencyInjection/HttplugExtension.php +++ b/DependencyInjection/HttplugExtension.php @@ -218,6 +218,11 @@ private function configureClient(ContainerBuilder $container, $name, array $argu $pluginClientOptions = []; if ($profiling) { + if (!in_array('httplug.plugin.stopwatch', $arguments['plugins'])) { + // Add the stopwatch plugin + array_unshift($arguments['plugins'], 'httplug.plugin.stopwatch'); + } + // Tell the plugin journal what plugins we used $container ->getDefinition('httplug.collector.plugin_journal') @@ -340,6 +345,12 @@ private function registerAutoDiscoverableClient(ContainerBuilder $container, $na $pluginClientOptions = []; if ($profiling) { + // Tell the plugin journal what plugins we used + $container + ->getDefinition('httplug.collector.plugin_journal') + ->addMethodCall('setPlugins', [$name, ['httplug.plugin.stopwatch']]) + ; + $debugPluginServiceId = $this->registerDebugPlugin($container, $serviceId); $pluginClientOptions['debug_plugins'] = [new Reference($debugPluginServiceId)]; @@ -348,7 +359,7 @@ private function registerAutoDiscoverableClient(ContainerBuilder $container, $na $container ->register($serviceId, DummyClient::class) ->setFactory([PluginClientFactory::class, 'createPluginClient']) - ->setArguments([[], $factory, [], $pluginClientOptions]) + ->setArguments([[new Reference('httplug.plugin.stopwatch')], $factory, [], $pluginClientOptions]) ; return $serviceId;