Skip to content

Instantly share code, notes, and snippets.

@korchasa
Last active March 19, 2016 20:09
Show Gist options
  • Save korchasa/e771b42f4f14260eb914 to your computer and use it in GitHub Desktop.
Save korchasa/e771b42f4f14260eb914 to your computer and use it in GitHub Desktop.
<?php
/**
* @param $log_name
* @param array $guzzle_options
* @return \GuzzleHttp\Client
*/
function logging_guzzle($log_name, array $guzzle_options = [])
{
$log_file = storage_path('logs/' . $log_name . '.log');
$writer = new \Monolog\Handler\StreamHandler($log_file);
$writer->setFormatter(new \Monolog\Formatter\LineFormatter(null, null, true));
$logger = new \Monolog\Logger($log_name);
$logger->pushHandler($writer);
$handler = \GuzzleHttp\HandlerStack::create();
$handler->push(\GuzzleHttp\Middleware::log(
$logger,
new \GuzzleHttp\MessageFormatter(\GuzzleHttp\MessageFormatter::DEBUG)
));
return new \GuzzleHttp\Client(array_merge(array(
'handler' => $handler,
'http_errors' => false,
), $guzzle_options));
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment