public function onKernelResponse(FilterResponseEvent $event) { if (HttpKernelInterface::MASTER_REQUEST !== $event->getRequestType()) { return; } if (false === $this->isEnabled()) { return; } $response = $event->getResponse(); $request = $event->getRequest(); // do not capture redirects or modify XML HTTP Requests if ($request->isXmlHttpRequest()) { return; } if ($response->isRedirection() || $response->headers->has('Content-Type') && false === strpos($response->headers->get('Content-Type'), 'html') || 'html' !== $request->getRequestFormat()) { return; } $profiler = $event->getKernel()->getApplication()->getContainer()->get('profiler'); $profile = $profiler->collect($request, $response, null); $profile->getCollector('logger')->lateCollect(); $renderer = $event->getKernel()->getApplication()->getRenderer(); $this->injectToolbar($response, $profile, $renderer); }