Merge pull request #1007 from micro/ultra-hacks
ultra hacks to make debug handler work in proxy
This commit is contained in:
		| @@ -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 | ||||
|   | ||||
							
								
								
									
										11
									
								
								service.go
									
									
									
									
									
								
							
							
						
						
									
										11
									
								
								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 | ||||
|   | ||||
| @@ -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), | ||||
| 			), | ||||
| 		) | ||||
| 	}) | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user