nixilla / api-logger-bundle
API logger bundle help your app with API calls monitoring
Installs: 7 286
Dependents: 0
Suggesters: 0
Security: 0
Stars: 4
Watchers: 3
Forks: 1
Open Issues: 0
Type:symfony-bundle
Requires
- php: >=5.6
- ext-json: *
- kriswallsmith/buzz: ^1
- symfony/framework-bundle: ~2.3||~3||~4||~5
- twig/twig: ^3.0
Requires (Dev)
- friends-of-phpspec/phpspec-code-coverage: ^4.3.2
- pdepend/pdepend: ^2.6.1
- php-coveralls/php-coveralls: ^2.2
- phploc/phploc: ^5.0
- phpmd/phpmd: ^2.8.1
- phpspec/phpspec: ^6
- sebastian/phpcpd: ^4.1
- symfony/expression-language: ~2.3||~3||~4||~5
- twilio/sdk: ^5.42
README
Versions
For buzz<0.16
please use nixilla/api-logger-bundle:^0.4
and for latest buzz:^1
, use nixilla/api-logger-bundle:^0.5.1
Installation
Step 1: composer
composer require nixilla/api-logger-bundle
Step 2: enable bundle by adding it to AppKernel
<?php // app/AppKernel.php if (in_array($this->getEnvironment(), array('dev', 'test'))) { // your other dev bundles here $bundles[] = new Nixilla\Api\LoggerBundle\NixillaApiLoggerBundle(); }
Step 3: configuration
For latest buzz all you need to do is add this line into config/packages/buzz.yml
services: Buzz\Browser: arguments: ['@Buzz\Client\BuzzClientInterface', '@Psr\Http\Message\RequestFactoryInterface'] calls: # other middleware classes here - ['addMiddleware', ['@Nixilla\Api\LoggerBundle\Middleware\ApiLoggerMiddleware']]
For earlier version of buzz <0.16 and earlier version of this bundle <0.5 you need to configure like this:
If you're use HWIOAuthBundle and you want to monitor all OAuth API calls, you can now override default
hwi_oauth.http_client
service used by this bundle by adding this few lines to your config_dev.yml
file
# app/config/config_dev.yml imports: - { resource: config.yml } parameters: buzz.client.class: Nixilla\Api\LoggerBundle\Proxy\Buzz\Client\Curl services: hwi_oauth.http_client: class: "%buzz.client.class%" calls: - [ "setLogger", [ "@nixilla.api.logger" ] ]
If you're using sensio/buzz-bundle
, you may want to override the buzz.client
in config_dev.yml
# app/config/config_dev.yml imports: - { resource: config.yml } parameters: buzz.client.class: Nixilla\Api\LoggerBundle\Proxy\Buzz\Client\Curl services: buzz.client: class: "%buzz.client.class%" calls: - [ "setTimeout", [ "%buzz.client.timeout%" ] ] - [ "setLogger", [ "@nixilla.api.logger" ] ]
If you're using twilio/sdk
you may want to override their Http Client in config_dev.yml
# app/config/config_dev.yml imports: - { resource: config.yml } services: twilio.http.client: class: Nixilla\Api\LoggerBundle\Proxy\Twilio\CurlClient calls: - [ "setLogger", [ "@nixilla.api.logger" ] ] twilio.rest.client: class: Twilio\Rest\Client arguments: [ "%twilio.username%", "%twilio.password%", ~, ~, '@twilio.http.client']