在grpc-node中有记录请求时间的选项吗?我已经能够使用opentelemetry & jaegar记录响应时间(以显示响应时间)。我也找不到任何适用于此的npm包,但我只想问你们是否找到了grpc-node的任何选项。
发布于 2020-07-21 19:50:51
你不需要一个包来做这件事,你可以使用一个简单的gRPC客户端拦截器来做。
这就是你在Golang中要做的事情。只需查看如何在Node中创建gRPC拦截器。很抱歉没有JS示例,希望它能有所帮助。
func UnaryRequestTImeInterceptor() grpc.UnaryClientInterceptor {
return func(
ctx context.Context,
method string,
req interface{},
reply interface{},
cc *grpc.ClientConn,
invoker grpc.UnaryInvoker,
opts ...grpc.CallOption,
) error {
start := time.Now()
err := invoker(ctx, method, req, reply, cc, opts...)
reqTime := time.Since(start)
return err
}
}https://stackoverflow.com/questions/62974767
复制相似问题