From 672f548a6f0f5e033f33086cf5c159c969864d39 Mon Sep 17 00:00:00 2001 From: Zeger-Jan van de Weg Date: Wed, 27 Mar 2019 10:44:37 +0100 Subject: [PATCH] Ignore NotFound errors in Sentry Going through the errors reported to Sentry, NotFound errors pop up here and there. There are errors that are useful to the client, but not for the server to send them to sentry. --- changelogs/unreleased/zj-sentry-ignore-not-found.yml | 5 +++++ internal/middleware/sentryhandler/sentryhandler.go | 2 ++ .../middleware/sentryhandler/sentryhandler_test.go | 12 +++++------- 3 files changed, 12 insertions(+), 7 deletions(-) create mode 100644 changelogs/unreleased/zj-sentry-ignore-not-found.yml diff --git a/changelogs/unreleased/zj-sentry-ignore-not-found.yml b/changelogs/unreleased/zj-sentry-ignore-not-found.yml new file mode 100644 index 00000000000..c7c31811df5 --- /dev/null +++ b/changelogs/unreleased/zj-sentry-ignore-not-found.yml @@ -0,0 +1,5 @@ +--- +title: Ignore NotFound errors in Sentry +merge_request: 1156 +author: +type: changed diff --git a/internal/middleware/sentryhandler/sentryhandler.go b/internal/middleware/sentryhandler/sentryhandler.go index 47991a82aea..4cdb79af1f9 100644 --- a/internal/middleware/sentryhandler/sentryhandler.go +++ b/internal/middleware/sentryhandler/sentryhandler.go @@ -16,6 +16,8 @@ import ( var ignoredCodes = []codes.Code{ // OK means there was no error codes.OK, + // NotFound means the (pool) repository was not present + codes.NotFound, // Canceled and DeadlineExceeded indicate clients that disappeared or lost interest codes.Canceled, codes.DeadlineExceeded, diff --git a/internal/middleware/sentryhandler/sentryhandler_test.go b/internal/middleware/sentryhandler/sentryhandler_test.go index 88888acb90a..2e5b1670f12 100644 --- a/internal/middleware/sentryhandler/sentryhandler_test.go +++ b/internal/middleware/sentryhandler/sentryhandler_test.go @@ -32,13 +32,11 @@ func Test_generateRavenPacket(t *testing.T) { wantCulprit: "SSHService::SSHUploadPack", }, { - name: "GRPC error", - method: "/gitaly.RepoService/RepoExists", - sinceStart: 500 * time.Millisecond, - err: status.Errorf(codes.NotFound, "Something failed"), - wantCode: codes.NotFound, - wantMessage: "rpc error: code = NotFound desc = Something failed", - wantCulprit: "RepoService::RepoExists", + name: "GRPC error", + method: "/gitaly.RepoService/RepoExists", + sinceStart: 500 * time.Millisecond, + err: status.Errorf(codes.NotFound, "Something failed"), + wantNil: true, }, { name: "nil", -- GitLab