Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitaly.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Newdigate <andrew@troupe.co>2017-06-09 16:38:20 +0300
committerAndrew Newdigate <andrew@troupe.co>2017-06-09 16:38:20 +0300
commit58338d7dfffb615803be35ad935c7f37fad80055 (patch)
tree5b45af2ea046be257450a3729e7c861f3b04b7ef
parentb3874986935b8166c257879fcbc94765b18fa9f9 (diff)
Slight refactoring to make the code easier to understand
-rw-r--r--internal/service/middleware/sentryhandler/sentryhandler.go18
1 files changed, 11 insertions, 7 deletions
diff --git a/internal/service/middleware/sentryhandler/sentryhandler.go b/internal/service/middleware/sentryhandler/sentryhandler.go
index a610ab5bf..f33f8ff4f 100644
--- a/internal/service/middleware/sentryhandler/sentryhandler.go
+++ b/internal/service/middleware/sentryhandler/sentryhandler.go
@@ -17,7 +17,11 @@ import (
func UnaryLogHandler(ctx context.Context, req interface{}, info *grpc.UnaryServerInfo, handler grpc.UnaryHandler) (interface{}, error) {
start := time.Now()
resp, err := handler(ctx, req)
- logRequest(ctx, info.FullMethod, start, err)
+
+ if err != nil {
+ logGrpcErrorToSentry(ctx, info.FullMethod, start, err)
+ }
+
return resp, err
}
@@ -25,7 +29,11 @@ func UnaryLogHandler(ctx context.Context, req interface{}, info *grpc.UnaryServe
func StreamLogHandler(srv interface{}, stream grpc.ServerStream, info *grpc.StreamServerInfo, handler grpc.StreamHandler) error {
start := time.Now()
err := handler(srv, stream)
- logRequest(stream.Context(), info.FullMethod, start, err)
+
+ if err != nil {
+ logGrpcErrorToSentry(stream.Context(), info.FullMethod, start, err)
+ }
+
return err
}
@@ -37,11 +45,7 @@ func stringMap(incoming map[string]interface{}) map[string]string {
return result
}
-func logRequest(ctx context.Context, method string, start time.Time, err error) {
- if err == nil {
- return
- }
-
+func logGrpcErrorToSentry(ctx context.Context, method string, start time.Time, err error) {
grpcErrorCode := grpc.Code(err)
if grpcErrorCode == codes.OK {