diff --git a/internal/server/grpc_router.go b/internal/server/grpc_router.go index 5df67e5614d5a811d73e0f0d6f46bc98cb74dbfd..35e9a7e3c00b473051a24c5161abe6debc2c2131 100644 --- a/internal/server/grpc_router.go +++ b/internal/server/grpc_router.go @@ -95,7 +95,7 @@ func createRueckfrageClient(grpcAddress string) (pb.AntragraumServiceClient, fun target := GetGrpcServerUrl(grpcAddress, conf) conn, err := grpc.NewClient(target, grpc.WithTransportCredentials(insecure.NewCredentials())) if err != nil { - log.WithError(err).Error("rueckfrage router failed to route: %v", err) + log.WithError(err).Error(fmt.Sprintf("rueckfrage router failed to route: %v", err)) return nil, nil, errors.New("rueckfrage router failed to route") } diff --git a/internal/server/middleware_test.go b/internal/server/middleware_test.go index 3a7c158d412b743c65eaad28a61c79fba4228d72..ec965f6a7c8b3ddab453343a0b6e5fdc1a7129b4 100644 --- a/internal/server/middleware_test.go +++ b/internal/server/middleware_test.go @@ -31,46 +31,50 @@ import ( "github.com/stretchr/testify/assert" "net/http" "testing" + "log" + "github.com/sirupsen/logrus" + "go.elastic.co/ecslogrus" ) func TestRequestLoggingMiddleware(t *testing.T) { + logger := logrus.New() + logger.SetFormatter(&ecslogrus.Formatter{}) + log.SetOutput(logger.Writer()) + t.Run("should log request", func(t *testing.T) { + logger.SetLevel(logrus.DebugLevel) mock.SetUpGrpcServer() SetUpGrpcRouter() SetUpHttpGateway() - var buf bytes.Buffer - logger.BaseLogger.SetOutput(&buf) - - originalFlags := logger.BaseLogger.Flags() - defer func() { - logger.BaseLogger.SetOutput(nil) - logger.BaseLogger.SetFlags(originalFlags) - }() - jsonData := []byte(`{"postfachId": "testPostfachId"}`) req, _ := http.NewRequest("POST", "http://localhost:8082/api/v1/rueckfragen", bytes.NewBuffer(jsonData)) req.Header.Set(GrpcAddressHeader, "localhost") + var buf bytes.Buffer + log.SetOutput(&buf) + + defer func() { + log.SetOutput(nil) + }() + client := &http.Client{} client.Do(req) logOutput := buf.String() - assert.Contains(t, logOutput, "received POST request for /api/v1/rueckfragen with body: {\"postfachId\": \"testPostfachId\"}") - assert.Contains(t, logOutput, "successfully handled POST request for /api/v1/rueckfragen with body: {\"postfachId\": \"testPostfachId\"}") + assert.Contains(t, "successfully handled POST request for /api/v1/rueckfragen with body: {\"postfachId\": \"testPostfachId\"}", logOutput) }) t.Run("should not log request", func(t *testing.T) { + logger.SetLevel(logrus.InfoLevel) mock.SetUpGrpcServer() SetUpHttpGateway() var buf bytes.Buffer - logger.BaseLogger.SetOutput(&buf) + log.SetOutput(&buf) - originalFlags := logger.BaseLogger.Flags() defer func() { - logger.BaseLogger.SetOutput(nil) - logger.BaseLogger.SetFlags(originalFlags) + log.SetOutput(nil) }() http.Get("http://localhost:8082/")