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:
authorPawel Chojnacki <pawel@chojnacki.ws>2017-06-07 03:36:59 +0300
committerPawel Chojnacki <pawel@chojnacki.ws>2017-06-07 03:38:52 +0300
commita7e1205219387a6d24c8579994f73a33b3028010 (patch)
tree6b0c2398d0f13d8b156eb8f74f8e4f76a9ad4dd9 /app/models/environment.rb
parent969b812433b6030b15b591ec5862daae1b707025 (diff)
Use explicit instance of prometheus service and add access methods to it
Diffstat (limited to 'app/models/environment.rb')
-rw-r--r--app/models/environment.rb14
1 files changed, 9 insertions, 5 deletions
diff --git a/app/models/environment.rb b/app/models/environment.rb
index 8d98b02c05a..9b7dc7f807e 100644
--- a/app/models/environment.rb
+++ b/app/models/environment.rb
@@ -149,20 +149,24 @@ class Environment < ActiveRecord::Base
project.monitoring_service.present? && available? && last_deployment.present?
end
- def has_additional_metrics?
- has_metrics? && project.monitoring_service&.respond_to?(:reactive_query)
- end
-
def metrics
project.monitoring_service.environment_metrics(self) if has_metrics?
end
+ def has_additional_metrics?
+ prometheus_service.present? && available? && last_deployment.present?
+ end
+
def additional_metrics
if has_additional_metrics?
- project.monitoring_service.reactive_query(Gitlab::Prometheus::Queries::AdditionalMetricsEnvironmentQuery.name, self.id, &:itself)
+ prometheus_service.additional_environment_metrics(self)
end
end
+ def prometheus_service
+ @prometheus_service ||= project.monitoring_services.reorder(nil).find_by(active: true, type: PrometheusService.name)
+ end
+
# An environment name is not necessarily suitable for use in URLs, DNS
# or other third-party contexts, so provide a slugified version. A slug has
# the following properties: