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
Step 1: composer
composer require nixilla/api-logger-bundleStep 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']
