在 grpc-node 中记录请求时间是否有任何选项?我已经能够使用 opentelemetry 和 jaegar 记录响应时间(以显示响应时间)。我也找不到任何 npm 包,但只是想问你们是否确实找到了 grpc-node 的任何选项。
问问题
352 次
1 回答
0
你不需要一个包来做这件事,你可以使用一个简单的 gRPC 客户端拦截器来做。
这就是你在 Golang 中的做法。只需检查如何在 Node.js 中创建 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
}
}
于 2020-07-21T11:50:51.457 回答