Open Monograph Press  3.3.0
BackoffLogger.php
1 <?php
2 
3 namespace Guzzle\Plugin\Backoff;
4 
9 
20 {
22  const DEFAULT_FORMAT = '[{ts}] {method} {url} - {code} {phrase} - Retries: {retries}, Delay: {delay}, Time: {connect_time}, {total_time}, cURL: {curl_code} {curl_error}';
23 
25  protected $logger;
26 
28  protected $formatter;
29 
35  {
36  $this->logger = $logger;
37  $this->formatter = $formatter ?: new MessageFormatter(self::DEFAULT_FORMAT);
38  }
39 
40  public static function getSubscribedEvents()
41  {
42  return array(BackoffPlugin::RETRY_EVENT => 'onRequestRetry');
43  }
44 
52  public function setTemplate($template)
53  {
54  $this->formatter->setTemplate($template);
55 
56  return $this;
57  }
58 
64  public function onRequestRetry(Event $event)
65  {
66  $this->logger->log($this->formatter->format(
67  $event['request'],
68  $event['response'],
69  $event['handle'],
70  array(
71  'retries' => $event['retries'],
72  'delay' => $event['delay']
73  )
74  ));
75  }
76 }
Symfony\Component\EventDispatcher\EventSubscriberInterface
Definition: lib/vendor/symfony/event-dispatcher/EventSubscriberInterface.php:25
Guzzle\Log\MessageFormatter
Definition: lib/vendor/guzzle/guzzle/src/Guzzle/Log/MessageFormatter.php:39
Guzzle\Plugin\Backoff\BackoffPlugin\RETRY_EVENT
const RETRY_EVENT
Definition: BackoffPlugin.php:20
Guzzle\Plugin\Backoff
Definition: AbstractBackoffStrategy.php:3
Guzzle\Common\Event
Definition: lib/vendor/guzzle/guzzle/src/Guzzle/Common/Event.php:10
Guzzle\Plugin\Backoff\BackoffLogger\$formatter
$formatter
Definition: BackoffLogger.php:34
Guzzle\Plugin\Backoff\BackoffLogger\DEFAULT_FORMAT
const DEFAULT_FORMAT
Definition: BackoffLogger.php:23
Guzzle\Plugin\Backoff\BackoffLogger\setTemplate
setTemplate($template)
Definition: BackoffLogger.php:58
Guzzle\Plugin\Backoff\BackoffLogger\__construct
__construct(LogAdapterInterface $logger, MessageFormatter $formatter=null)
Definition: BackoffLogger.php:40
Guzzle\Plugin\Backoff\BackoffLogger
Definition: BackoffLogger.php:19
Guzzle\Plugin\Backoff\BackoffLogger\$logger
$logger
Definition: BackoffLogger.php:28
Guzzle\Log\LogAdapterInterface
Definition: LogAdapterInterface.php:8
Guzzle\Plugin\Backoff\BackoffLogger\onRequestRetry
onRequestRetry(Event $event)
Definition: BackoffLogger.php:70
Guzzle\Plugin\Backoff\BackoffLogger\getSubscribedEvents
static getSubscribedEvents()
Definition: BackoffLogger.php:46