hannesvdvreken/guzzle-debugbar
Fork: 12 Star: 74 (更新于 2024-11-17 20:19:09)
license: MIT
Language: PHP .
A Guzzle middleware that lets you log HTTP requests in the PHP debugbar timeline.
最后发布版本: 3.0.1 ( 2020-09-18 01:36:28)
Guzzle middleware to log requests to PHP DebugBar's timeline
⚠️ This project is up for adoption. Get in touch if you're interested in actively maintaining 3 closely related packages.
Guzzle middleware to log requests to DebugBar's timeline.
Installation
composer require hannesvdvreken/guzzle-debugbar --dev
Usage
Just six lines of code are needed to log your requests to DebugBar's timeline.
$debugBar = new StandardDebugBar();
// or when using Laravel:
$debugBar = app('debugbar');
// Get data collector.
$timeline = $debugBar->getCollector('time');
// Wrap the timeline.
$profiler = new \GuzzleHttp\Profiling\Debugbar\Profiler($timeline);
// Add the middleware to the stack
$stack = \GuzzleHttp\HandlerStack::create();
$stack->unshift(new \GuzzleHttp\Profiling\Middleware($profiler));
// New up the client with this handler stack.
$client = new \GuzzleHttp\Client(['handler' => $stack]);
Now $client
is ready to make requests. Every request is now logged to the timeline.
Recommended: use Guzzle's Log middleware
$debugBar = new StandardDebugBar();
// or when using Laravel:
$debugBar = app('debugbar');
// PSR-3 logger:
$logger = $debugBar->getCollector('messages');
// Create a new Log middleware.
$stack->push(\GuzzleHttp\Middleware::log($logger, new \GuzzleHttp\MessageFormatter()));
// New up the client with this handler stack.
$client = new \GuzzleHttp\Client(['handler' => $stack]);
Support
Laravel
It is recommended to have my friend Barry's laravel-debugbar installed and configured. Make sure to include his and our service providers your app's providers
array:
'providers' => [
...
Barryvdh\Debugbar\ServiceProvider::class,
GuzzleHttp\Profiling\Debugbar\Support\Laravel\ServiceProvider::class,
],
If you want to use a different DebugBar\DebugBar
instance, create a ServiceProvider that binds an
instance with the key debugbar
. For example with this register method:
public function register()
{
$this->app->singleton('debugbar', function () {
return new \DebugBar\StandardDebugBar();
});
}
Be sure to create every client (type hint with GuzzleHttp\ClientInterface
or GuzzleHttp\Client
) via the IoC container.
FAQ:
I get one of these errors:
'time' is not a registered collector
'exceptions' is not a registered collector
It means you disabled the time
collector and/or the exceptions
collector in your packages/barryvdh/laravel-debugbar/config.php
. These are enabled by default. This package depends on it, so please enable them both.
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.
Testing
To test your code before pushing, run the unit test suite.
vendor/bin/phpunit
License
最近版本更新:(数据更新于 2024-10-23 13:10:38)
2020-09-18 01:36:28 3.0.1
2020-07-18 08:06:03 3.0.0
2017-04-03 18:25:31 2.0.1
2015-11-25 23:46:06 2.0.0
2015-01-07 08:14:07 1.1.0
2015-01-07 00:18:16 1.0.0
hannesvdvreken/guzzle-debugbar同语言 PHP最近更新仓库
2024-11-20 23:58:25 laravel/framework
2024-11-20 18:39:23 danielmiessler/SecLists
2024-11-16 21:54:23 w7corp/easywechat
2024-11-16 04:49:03 coollabsio/coolify
2024-11-13 23:19:14 symfony/symfony
2024-11-13 22:53:21 symfony/var-dumper