*/ class ElasticaDataCollector extends DataCollector { protected $logger; public function __construct(ElasticaLogger $logger) { $this->logger = $logger; } /** * {@inheritdoc} */ public function collect(Request $request, Response $response, \Exception $exception = null) { $this->data['nb_queries'] = $this->logger->getNbQueries(); $this->data['queries'] = $this->logger->getQueries(); } public function getQueryCount() { return $this->data['nb_queries']; } public function getQueries() { return $this->data['queries']; } public function getTime() { $time = 0; foreach ($this->data['queries'] as $query) { $time += $query['executionMS']; } return $time; } /** * {@inheritdoc} */ public function getName() { return 'elastica'; } }