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

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2021-05-17 18:10:15 +0300
committerGitLab Bot <gitlab-bot@gitlab.com>2021-05-17 18:10:15 +0300
commit68c476dbd8a2c670aeeebffce8b63b554a3ac7f0 (patch)
treec46b90a5c131d8e8d7fb530f1b8f9390b8eb2613 /app/services/spam
parenta62238de7302e54edafa3407a2dc8ba1a5f96e4d (diff)
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'app/services/spam')
-rw-r--r--app/services/spam/spam_verdict_service.rb16
1 files changed, 13 insertions, 3 deletions
diff --git a/app/services/spam/spam_verdict_service.rb b/app/services/spam/spam_verdict_service.rb
index 32e58fcc06b..7155017b73f 100644
--- a/app/services/spam/spam_verdict_service.rb
+++ b/app/services/spam/spam_verdict_service.rb
@@ -16,12 +16,17 @@ module Spam
def execute
spamcheck_result = nil
spamcheck_attribs = {}
+ spamcheck_error = false
external_spam_check_round_trip_time = Benchmark.realtime do
- spamcheck_result, spamcheck_attribs = spamcheck_verdict
+ spamcheck_result, spamcheck_attribs, spamcheck_error = spamcheck_verdict
end
- # assign result to a var and log it before reassigning to nil when monitorMode is true
+ label = spamcheck_error ? 'ERROR' : spamcheck_result.to_s.upcase
+
+ histogram.observe( { result: label }, external_spam_check_round_trip_time )
+
+ # assign result to a var for logging it before reassigning to nil when monitorMode is true
original_spamcheck_result = spamcheck_result
spamcheck_result = nil if spamcheck_attribs&.fetch("monitorMode", "false") == "true"
@@ -83,8 +88,9 @@ module Spam
end
rescue StandardError => e
Gitlab::ErrorTracking.log_exception(e)
+
# Default to ALLOW if any errors occur
- [ALLOW, attribs]
+ [ALLOW, attribs, true]
end
end
@@ -95,5 +101,9 @@ module Spam
def logger
@logger ||= Gitlab::AppJsonLogger.build
end
+
+ def histogram
+ @histogram ||= Gitlab::Metrics.histogram(:gitlab_spamcheck_request_duration_seconds, 'Request duration to the anti-spam service')
+ end
end
end