GuzzleHttp: как правильно работать с handler?

Всем привет! У меня задачу: писать в файл все запросы и ответы, которые проходят через http-клиента (GuzzleHttp).

Делаю это следующим образом:

<?php

$stack = HandlerStack::create();

$stack->push(
    GuzzleHttp\Middleware::log(
        $myLogger,
        $messageFormater
    )
);

$http = new GuzzleHttp\Client(array(
  'handler' => $stack
));

$result = $http->get($url);

var_dump($result->getBody->getContents()); // "" - пусто

если убирать handler - то результат возвращается. в чем причина такого поведения ? как можно записывать запросы и ответы в журнал и при этом, чтобы клиент продолжал штатно работать, и возвращать результата ?

$myLogger - обычный prs-логгер. использую реализацию Monolog

$messageFormater = new GuzzleHttp\MessageFormatter(
   GuzzleHttp\MessageFormatter::DEBUG
);

Ответы (0 шт):