如何从我的GRPC负载均衡器发送自定义错误

时间:2019-07-04 01:49:44

标签: kubernetes load-balancing grpc-go

我正在基于https://github.com/grpc/grpc/blob/master/doc/load-balancing.mdhttps://godoc.org/google.golang.org/grpc/balancer/grpclb/grpc_lb_v1开发自己的自定义GRPCLoadBalancer,效果很好。

当前,当客户端尝试连接到下游服务(通过我的Grpc LoadBalancer)时,我需要发送自定义错误代码作为状态代码,并自定义错误消息作为错误消息

基本上,我正在尝试通过BalanceLoad()发送此自定义错误代码和消息。该函数的签名为(LoadBalancerServer接口的一部分)

BalanceLoad(LoadBalancer_BalanceLoadServer) error

此方法仅允许引发错误(本质上是错误字符串),我已经看到它引发的错误没有到达客户端。 如何将我的自定义错误消息和代码发送到Grpc通道,以便客户端应收到我的自定义错误,而不是诸如以下错误消息:

Grpc.Core.RpcException: Status(StatusCode=Unknown, Detail="Failed to create subchannel")

因此,它不是我的StatusCode = "Unknown",而是我的自定义错误代码,详细信息将是我的自定义错误消息。

0 个答案:

没有答案