将统计信息处理程序附加到 Go 中的 gRPC



所以我正在使用一个mux,它将确定传入的请求类型(gRPC或REST(并相应地路由请求。对于 gRPC 请求,我附加了一个统计信息处理程序来收集一些元数据,但我们用于标记元数据的接口方法之一TagRPC()未被调用。

app.httpMux.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
    if isgRPC(r) {
        app.gRPCServer.ServeHTTP(w, r)
    } else {
        app.rMux.ServeHTTP(w, r)
    }
})

我认为问题在于gRPC的ServeHTTP方法不支持所有方法。如果我要手动附加TagGRPC(),哪里会是一个好地方?

stats handler 现在在 ServeHTTP 处理程序中不完全受支持。

更多详情请见 https://github.com/grpc/grpc-go/issues/1784

(我刚刚注意到您也提交了问题,但这可能有助于其他对此感兴趣的人(

最新更新