ultra hacks to make debug handler work in proxy
This commit is contained in:
parent
3356b83f24
commit
91e9c0cb62
@ -7,8 +7,8 @@ import (
|
|||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/micro/go-micro/debug/log"
|
"github.com/micro/go-micro/debug/log"
|
||||||
|
|
||||||
proto "github.com/micro/go-micro/debug/proto"
|
proto "github.com/micro/go-micro/debug/proto"
|
||||||
|
"github.com/micro/go-micro/server"
|
||||||
)
|
)
|
||||||
|
|
||||||
var (
|
var (
|
||||||
@ -46,7 +46,12 @@ func (d *Debug) Stats(ctx context.Context, req *proto.StatsRequest, rsp *proto.S
|
|||||||
return nil
|
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
|
var options []log.ReadOption
|
||||||
|
|
||||||
since := time.Unix(req.Since, 0)
|
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
|
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)
|
metadata := make(map[string]string)
|
||||||
for k, v := range record.Metadata {
|
for k, v := range record.Metadata {
|
||||||
metadata[k] = v
|
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/server"
|
||||||
"github.com/micro/go-micro/util/log"
|
"github.com/micro/go-micro/util/log"
|
||||||
"github.com/micro/go-micro/util/wrapper"
|
"github.com/micro/go-micro/util/wrapper"
|
||||||
|
|
||||||
pb "github.com/micro/go-micro/debug/proto"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
type service struct {
|
type service struct {
|
||||||
@ -143,9 +141,12 @@ func (s *service) Stop() error {
|
|||||||
|
|
||||||
func (s *service) Run() error {
|
func (s *service) Run() error {
|
||||||
// register the debug handler
|
// register the debug handler
|
||||||
pb.RegisterDebugHandler(s.opts.Server,
|
s.opts.Server.Handle(
|
||||||
handler.DefaultHandler,
|
s.opts.Server.NewHandler(
|
||||||
server.InternalHandler(true))
|
handler.DefaultHandler,
|
||||||
|
server.InternalHandler(true),
|
||||||
|
),
|
||||||
|
)
|
||||||
|
|
||||||
// start the profiler
|
// start the profiler
|
||||||
// TODO: set as an option to the service, don't just use pprof
|
// TODO: set as an option to the service, don't just use pprof
|
||||||
|
@ -5,7 +5,6 @@ import (
|
|||||||
"context"
|
"context"
|
||||||
"sync"
|
"sync"
|
||||||
|
|
||||||
proto "github.com/micro/go-micro/debug/proto"
|
|
||||||
"github.com/micro/go-micro/debug/handler"
|
"github.com/micro/go-micro/debug/handler"
|
||||||
"github.com/micro/go-micro/proxy"
|
"github.com/micro/go-micro/proxy"
|
||||||
"github.com/micro/go-micro/server"
|
"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 {
|
func New(name string, p proxy.Proxy) *Server {
|
||||||
// only register this once
|
// only register this once
|
||||||
once.Do(func() {
|
once.Do(func() {
|
||||||
proto.RegisterDebugHandler(
|
server.DefaultRouter.Handle(
|
||||||
server.DefaultServer,
|
server.DefaultRouter.NewHandler(
|
||||||
handler.DefaultHandler,
|
handler.DefaultHandler,
|
||||||
server.InternalHandler(true),
|
server.InternalHandler(true),
|
||||||
|
),
|
||||||
)
|
)
|
||||||
})
|
})
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user