/**
  * {@inheritdoc }
  */
 public function query($query, $index = '*', $comment = '')
 {
     $time = microtime(true);
     $result = $this->proxy->query($query, $index, $comment);
     $elapsed = microtime(true) - $time;
     $query = $this->collector->processAPIQuery($query, $index, $comment, $result !== false, $elapsed);
     if ($result === false) {
         $lastError = $this->proxy->getLastError();
         $this->collector->processError($lastError, $query);
     }
     return $result;
 }
 /**
  * {@inheritdoc }
  */
 public function multiQuery(array $queue)
 {
     $result = [];
     try {
         $result = $this->connection->multiQuery($queue);
     } catch (\Exception $e) {
         $this->processor->processError($e->getMessage());
         throw $e;
     } finally {
         $meta = $this->connection->query('SHOW META');
         $this->processor->processSQLQuery(implode(';', $queue), $meta);
     }
     return $result;
 }