Guzzle client middleware to profile HTTP requests.
⚠️ This project is up for adoption. Get in touch if you're interested in actively maintaining 3 closely related packages., (*1)
, (*2)
Guzzle Middleware to log made HTTP requests to a timeline for debugging., (*3)
Adapter
A couple of adapters are available:, (*4)
Usage
// First you need a HandlerStack
$stack = GuzzleHttp\HandlerStack::create();
// Create a middleware by wrapping a profiler (eg: DebugBar's profiler):
/** @var DebugBar\DebugBar $debugBar */
$timeline = $debugBar->getCollector('time');
$profiler = new GuzzleHttp\Profiling\DebugBar\Profiler($timeline);
$middleware = new GuzzleHttp\Profiling\Middleware($profiler);
// Add the Middleware to the stack of middlewares.
$stack->unshift($middleware);
// Then you need to add it to the Guzzle HandlerStack
$stack = GuzzleHttp\HandlerStack::create();
$stack->unshift($middleware);
// Create a Guzzle Client with the new HandlerStack:
$client = new GuzzleHttp\Client(['handler' => $stack]);
And you are done! All requests will now be logged to whatever profiler you wrapped., (*5)
Contributing
Feel free to make a pull request. Please try to be as
PSR-2
compliant as possible. Fix Code Style quickly by running vendor/bin/php-cs-fixer fix
. Give a good description of what is supposed to be added/changed/removed/fixed., (*6)
Testing
To test your code before pushing, run the unit test suite., (*7)
vendor/bin/phpunit
License
MIT, (*8)