nixilla/api-logger-bundle

API日志组件可以帮助您的应用程序监控API调用

安装次数: 7,242

依赖关系: 0

建议者: 0

安全性: 0

星标: 4

关注者: 3

分支: 1

开放问题: 0

类型:symfony-bundle

0.5.1 2021-03-29 09:40 UTC

This package is auto-updated.

Last update: 2024-08-29 04:03:18 UTC


README

Version Build Status Coverage Status Scrutinizer Code Quality License

版本

对于 buzz<0.16 请使用 nixilla/api-logger-bundle:^0.4,对于最新的 buzz:^1,请使用 nixilla/api-logger-bundle:^0.5.1

安装

步骤 1: composer

composer require nixilla/api-logger-bundle

步骤 2: 通过将其添加到 AppKernel 中启用组件

<?php

    // app/AppKernel.php

    if (in_array($this->getEnvironment(), array('dev', 'test'))) {
        // your other dev bundles here
        $bundles[] = new Nixilla\Api\LoggerBundle\NixillaApiLoggerBundle();
    }

步骤 3: 配置

对于最新的 buzz,您只需将以下行添加到 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']]

对于 buzz 版本小于 0.16 和此组件版本小于 0.5 的情况,您需要按照以下方式配置

如果您正在使用 HWIOAuthBundle 并且希望监控所有 OAuth API 调用,您现在可以通过在您的 config_dev.yml 文件中添加以下几行来覆盖此组件默认使用的 hwi_oauth.http_client 服务

# 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" ] ]

如果您正在使用 sensio/buzz-bundle,您可能希望覆盖配置文件中的 buzz.client

# 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" ] ]

如果您正在使用 twilio/sdk,您可能希望覆盖配置文件中的 Http Client

# 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']