Use case(s) - what problem will this feature solve?
I want to expose channelz information on the debug port of each of my processes.
For servers this is feasible, I register the channelz service on my *grpc.Server and point the UI to use that.
For processes that don't host a gRPC server, I can't access the information.
Proposed Solution
Expose the internal APIs used by https://github.com/grpc/grpc-go/blob/v1.78.0/channelz/service/service.go#L42
Alternatives Considered
- I could run a server on a random port from all my processes, but that has security implications.
- I could implement something that implements grpc.ServiceRegistrar so I can extract google.golang.org/grpc/channelz/service.serverImpl{} and do calls on that.
Additional Context
I'm using github.com/rantav/go-grpc-channelz to render a UI
Use case(s) - what problem will this feature solve?
I want to expose channelz information on the debug port of each of my processes.
For servers this is feasible, I register the channelz service on my *grpc.Server and point the UI to use that.
For processes that don't host a gRPC server, I can't access the information.
Proposed Solution
Expose the internal APIs used by https://github.com/grpc/grpc-go/blob/v1.78.0/channelz/service/service.go#L42
Alternatives Considered
Additional Context
I'm using github.com/rantav/go-grpc-channelz to render a UI