opentracing grpc interceptor
1.0.0
用于PHP的GRPC客户率拦截器使得可以轻松地在基于GRPC的呼叫中添加OpenTracing Support。
目前仅支持UnaryUnary呼叫。
use Grpc Internal InterceptorChannel ;
use OpenTracingInterceptor ClientInterceptor ;
use Acme Tracer ;
use Foo Bar SomeGrpcClient ;
use Foo Bar SomeGrpcMethodArgs ;
$ host = ' grpc.server.com:1313 ' ;
$ tracer = new Tracer ();
$ channel = SomeGrpcClient:: getDefaultChannel ( $ host , [
' credentials ' => ChannelCredentials:: createInsecure (),
]);
$ openTracingInterceptor = new ClientInterceptor ( $ tracer );
$ interceptor = new InterceptorChannel ( $ channel , $ openTracingInterceptor );
$ rootSpan = $ tracer -> startSpan ( " rootSpan " );
$ client = new SomeGrpcClient ( $ host , [], $ interceptor );
$ args = new SomeGrpcMethodArgs ();
$ options = [
' child_of ' => $ rootSpan
];
$ request = $ client -> SomeGrpcMethodCall ( $ args , [], $ options );
/** @var $result GrpcCallResponse */
[ $ result , $ code ] = $ request -> wait ();
echo $ result -> getPayload ();
$ rootSpan -> finish ();
$ tracer -> flush ();opentracing
Jaeger
所有信息和源代码均可提供,无明确或暗示的保证。使用源代码或其部分的使用是由您自行决定的。 CityMobil LLC采取合理的措施来确保该存储库中发布的信息的相关性,但它不承担维护或更新该存储库或其部分在公司建立的框架之外的责任,而无需通知第三方。