我们在生产环境中使用许多grpc通道。一些通道打开然后关闭,许多通道保持打开状态。
最近在一个开发项目之后,我们意识到我们正在打开一些渠道而不是关闭它们,直到它成为一个真正的麻烦来解决之前我们没有意识到这一点。
我们希望对连接进行一些监控。
我找到https://github.com/grpc/grpc-java/blob/master/documentation/monitoring-service-tutorial.md,但它说
注意:监视服务需要instrumentation-java库实现,这些实现仍在开发中。在发布instrumentation-java实现之前,本教程中的步骤不起作用。
我正在为我们的grpc寻找一些简单的监控。如渠道开放,吞吐量,错误计算基本的东西。
只是想知道你的团队在生产中监控grpc java的用途是什么?
答案 0 :(得分:2)
您可以使用拦截器获取指标。
java-grpc-prometheus提供服务器和客户端指标(渠道,方法消息等)
除此之外,您还可以使用Opentracing spans检测代码,以便更轻松地跟踪和衡量整个交易。
答案 1 :(得分:1)
我有一个GitHub项目,它为每个RPC调用监视以下内容:
它还监视服务器和客户端线程池信息。