diff --git a/debug/handler/debug.go b/debug/handler/debug.go index 0e077c7fcd..002dccbaea 100644 --- a/debug/handler/debug.go +++ b/debug/handler/debug.go @@ -7,8 +7,8 @@ import ( "time" "github.com/micro/go-micro/debug/log" - proto "github.com/micro/go-micro/debug/proto" + "github.com/micro/go-micro/server" ) var ( @@ -46,7 +46,12 @@ func (d *Debug) Stats(ctx context.Context, req *proto.StatsRequest, rsp *proto.S return nil } -func (d *Debug) Logs(ctx context.Context, req *proto.LogRequest, stream proto.Debug_LogsStream) error { +func (d *Debug) Logs(ctx context.Context, stream server.Stream) error { + req := new(proto.LogRequest) + if err := stream.Recv(req); err != nil { + return err + } + var options []log.ReadOption since := time.Unix(req.Since, 0) @@ -90,7 +95,7 @@ func (d *Debug) Logs(ctx context.Context, req *proto.LogRequest, stream proto.De return nil } -func (d *Debug) sendRecord(record log.Record, stream proto.Debug_LogsStream) error { +func (d *Debug) sendRecord(record log.Record, stream server.Stream) error { metadata := make(map[string]string) for k, v := range record.Metadata { metadata[k] = v diff --git a/service.go b/service.go index e0c53a981d..3058a3b295 100644 --- a/service.go +++ b/service.go @@ -16,8 +16,6 @@ import ( "github.com/micro/go-micro/server" "github.com/micro/go-micro/util/log" "github.com/micro/go-micro/util/wrapper" - - pb "github.com/micro/go-micro/debug/proto" ) type service struct { @@ -143,9 +141,12 @@ func (s *service) Stop() error { func (s *service) Run() error { // register the debug handler - pb.RegisterDebugHandler(s.opts.Server, - handler.DefaultHandler, - server.InternalHandler(true)) + s.opts.Server.Handle( + s.opts.Server.NewHandler( + handler.DefaultHandler, + server.InternalHandler(true), + ), + ) // start the profiler // TODO: set as an option to the service, don't just use pprof diff --git a/util/mux/mux.go b/util/mux/mux.go index ecc3c6801b..741dafcd57 100644 --- a/util/mux/mux.go +++ b/util/mux/mux.go @@ -5,7 +5,6 @@ import ( "context" "sync" - proto "github.com/micro/go-micro/debug/proto" "github.com/micro/go-micro/debug/handler" "github.com/micro/go-micro/proxy" "github.com/micro/go-micro/server" @@ -40,10 +39,11 @@ func (s *Server) ServeRequest(ctx context.Context, req server.Request, rsp serve func New(name string, p proxy.Proxy) *Server { // only register this once once.Do(func() { - proto.RegisterDebugHandler( - server.DefaultServer, - handler.DefaultHandler, - server.InternalHandler(true), + server.DefaultRouter.Handle( + server.DefaultRouter.NewHandler( + handler.DefaultHandler, + server.InternalHandler(true), + ), ) })