Skip to content

Commit 8982526

Browse files
vetchersas1024
authored andcommitted
feat(all): add logging to graphql transport
1 parent d02ec28 commit 8982526

1 file changed

Lines changed: 12 additions & 3 deletions

File tree

transport/grapql/server.go

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,12 +23,16 @@ func NewServer(
2323
ctx context.Context,
2424
e endpoint.Endpoint,
2525
dec DecodeRequestFunc,
26+
logger log.Logger,
2627
options ...ServerOption) *Server {
28+
if logger == nil {
29+
logger = log.NewNopLogger()
30+
}
2731
s := &Server{
2832
ctx: ctx,
2933
e: e,
3034
dec: dec,
31-
logger: log.NewNopLogger(),
35+
logger: logger,
3236
}
3337

3438
for _, option := range options {
@@ -75,8 +79,13 @@ func (s Server) ServeHTTP(w http.ResponseWriter, r *http.Request) {
7579
for _, f := range s.after {
7680
ctx = f(ctx, w)
7781
}
78-
79-
s.encodeResponse(ctx, w, graphql.Do(response.(graphql.Params)))
82+
resp := graphql.Do(response.(graphql.Params))
83+
if resp.HasErrors() {
84+
for _, e := range resp.Errors {
85+
s.logger.Log(e.Message)
86+
}
87+
}
88+
s.encodeResponse(ctx, w, resp)
8089
}
8190

8291
func (s Server) errorEncoder(_ context.Context, err error, w http.ResponseWriter) {

0 commit comments

Comments
 (0)