How to Use gRPC Reflection in Go

Web
Enable gRPC reflection in Go by importing the reflection package and calling reflection.Register on your server instance.

gRPC reflection is not enabled by default in Go; you must explicitly register the reflection server on your gRPC server instance. Add the grpc_reflection import and call grpc_reflection.Register before starting your server to allow clients to introspect your service methods and messages.

import (
	"google.golang.org/grpc"
	"google.golang.org/grpc/reflection"
)

func main() {
	lis, _ := net.Listen("tcp", ":50051")
	s := grpc.NewServer()
	// Register your services here
	// pb.RegisterMyServiceServer(s, &myServer{})

	// Enable reflection
	reflection.Register(s)

	if err := s.Serve(lis); err != nil {
		log.Fatalf("failed to serve: %v", err)
	}
}