php zipkin
1.0.0
Il s'agit d'une bibliothèque PHP non officielle pour OpenZipkin.
Incomplet, n'a qu'un seul transport avec zéro intégration. Cette bibliothèque contient une implémentation très minimale pour simplement envoyer des spans à zipkin.
La méthode recommandée pour installer PHP-Zipkin est via Composer
composer require drefined/php-zipkin
<?php
$ client = new GuzzleHttp Client ();
$ logger = new Drefined Zipkin Transport HTTPLogger ( $ client );
$ tracer = new Drefined Zipkin Tracer ( $ logger , 1.0 , true );
$ endpoint = new Drefined Zipkin Core Endpoint ( ' 127.0.0.1 ' , 8080 , ' test-trace ' );
$ trace = new Drefined Zipkin Core Trace ( $ tracer , $ endpoint );
$ trace -> createNewSpan ( ' test-server-trace ' );
$ trace -> record (
[Annotation:: generateServerRecv ()],
[BinaryAnnotation:: generateString ( ' server.request.uri ' , ' /server ' )]
);
$ trace -> record (
[Annotation:: generateServerSend ()],
[BinaryAnnotation:: generateString ( ' server.response ' , 200 )]
);
Ajoutez un middleware et un fournisseur de services aux emplacements appropriés.
<?php // laravel-project/app/Http/Kernel.php
namespace App Http ;
use ...
use Drefined Zipkin Instrumentation Laravel Middleware EnableZipkinTracing ;
class Kernel extends HttpKernel
{
...
protected $ middleware = [
...
EnableZipkinTracing::class,
];
. . .
}
<?php // laravel-project/config/app.php
use Drefined Zipkin Instrumentation Laravel Providers ZipkinTracingServiceProvider ;
return [
...
' providers ' => [
...
ZipkinTracingServiceProvider::class,
],
...
];