logger = $logger; $this->formatter = $formatter ?: new MessageFormatter(self::DEFAULT_FORMAT); } public static function getSubscribedEvents() { return array(BackoffPlugin::RETRY_EVENT => 'onRequestRetry'); } /** * Set the template to use for logging * * @param string $template Log message template * * @return self */ public function setTemplate($template) { $this->formatter->setTemplate($template); return $this; } /** * Called when a request is being retried * * @param Event $event Event emitted */ public function onRequestRetry(Event $event) { $this->logger->log($this->formatter->format( $event['request'], $event['response'], $event['handle'], array( 'retries' => $event['retries'], 'delay' => $event['delay'] ) )); } }