jcchavezs/zipkin-instrumentation-guzzle 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

jcchavezs/zipkin-instrumentation-guzzle

最新稳定版本:2.0.0

Composer 安装命令:

composer require jcchavezs/zipkin-instrumentation-guzzle

包简介

Zipkin instrumentation for Guzzle HTTP Client

README 文档

README

CI Latest Stable Version Total Downloads License

Zipkin instrumentation for Guzzle HTTP Client.

Install

composer require jcchavezs/zipkin-instrumentation-guzzle

Usage

ZipkinGuzzle\Middleware is an Guzzle middleware that can be used along with GuzzleHttp\Client to create a span and propagate the context.

Default handler

You can use the default handler to easy the instrumentation:

use Zipkin\TracingBuilder;
use ZipkinGuzzle\Middleware;

$tracing = TracingBuilder::create()->build();

// Default tags for all spans being created. They are not mandatory.
$tags = [
   'instance' => $_SERVER['SERVER_NAME']
];

$client = new Client([
    'handler' => Middleware\handlerStack($tracing, $tags),
]);

Customizing handler

If you need to customize the tracing handler (e.g. wrapping it with another handler) you can create a GuzzleHttp\HandlerStack and push/unshift handlers into it making sure the tracing middleware stays at the top of the stack:

use GuzzleHttp\HandlerStack;
use Zipkin\TracingBuilder;
use ZipkinGuzzle\Middleware;

$tracing = TracingBuilder::create()->build();

$stack = HandlerStack::create();
$stack->push(someMiddleware());
...
$stack->push(Middleware\tracing($tracing));

$client = new Client([
    'handler' => $stack,
]);

Guzzle 7

Guzzle 7 is compatible with PSR18 clients, hence you can use the native Zipkin instrumentation. Check https://github.com/openzipkin/zipkin-php/tree/master/src/Zipkin/Instrumentation/Http/Client/Psr18#usage for more details.

统计信息

  • 总下载量: 77.58k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 14
  • 点击次数: 1
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 14
  • Watchers: 1
  • Forks: 4
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2018-03-23