nixilla / api-logger-bundle
API日志组件可以帮助您的应用程序监控API调用
0.5.1
2021-03-29 09:40 UTC
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
版本
对于 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']