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:
Diffstat (limited to 'lib/gitlab/alerting/alert.rb')
-rw-r--r--lib/gitlab/alerting/alert.rb12
1 files changed, 12 insertions, 0 deletions
diff --git a/lib/gitlab/alerting/alert.rb b/lib/gitlab/alerting/alert.rb
index 7d97bd1bb52..d859ca89418 100644
--- a/lib/gitlab/alerting/alert.rb
+++ b/lib/gitlab/alerting/alert.rb
@@ -105,6 +105,10 @@ module Gitlab
metric_id.present?
end
+ def gitlab_fingerprint
+ Digest::SHA1.hexdigest(plain_gitlab_fingerprint)
+ end
+
def valid?
payload.respond_to?(:dig) && project && title && starts_at
end
@@ -115,6 +119,14 @@ module Gitlab
private
+ def plain_gitlab_fingerprint
+ if gitlab_managed?
+ [metric_id, starts_at].join('/')
+ else # self managed
+ [starts_at, title, full_query].join('/')
+ end
+ end
+
def parse_environment_from_payload
environment_name = payload&.dig('labels', 'gitlab_environment_name')