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

gitlab.com/gitlab-org/gitlab-pages.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJaime Martinez <jmartinez@gitlab.com>2020-02-11 11:39:25 +0300
committerAlessio Caiazza <acaiazza@gitlab.com>2020-02-11 11:39:25 +0300
commit2b0661b4ff4fe112798f03f62861096104b9e373 (patch)
tree6a6fe4dc6f0d499fbce4ae2b6e5a151cfef6eea1 /metrics
parent81db00b64dd2d4c9aec85fc58e92374e806732d9 (diff)
Add prometheus metrics for GitLab API client
Refactor metrics initialization removing init function from the metrics package.
Diffstat (limited to 'metrics')
-rw-r--r--metrics/metrics.go41
1 files changed, 29 insertions, 12 deletions
diff --git a/metrics/metrics.go b/metrics/metrics.go
index 1ae527a8..7ae50c81 100644
--- a/metrics/metrics.go
+++ b/metrics/metrics.go
@@ -11,8 +11,8 @@ var (
Help: "The number of sites served by this Pages app",
})
- // FailedDomainUpdates counts the number of failed site updates
- FailedDomainUpdates = prometheus.NewCounter(prometheus.CounterOpts{
+ // DomainFailedUpdates counts the number of failed site updates
+ DomainFailedUpdates = prometheus.NewCounter(prometheus.CounterOpts{
Name: "gitlab_pages_domains_failed_total",
Help: "The total number of site updates that have failed since daemon start",
})
@@ -58,16 +58,33 @@ var (
Name: "gitlab_pages_serverless_latency",
Help: "Serverless serving roundtrip duration",
})
+
+ // DomainsSourceAPIReqTotal is the number of calls made to the GitLab API that returned a 4XX error
+ DomainsSourceAPIReqTotal = prometheus.NewCounterVec(prometheus.CounterOpts{
+ Name: "gitlab_pages_domains_source_api_requests_total",
+ Help: "The number of GitLab domains API calls with different status codes",
+ }, []string{"status_code"})
+
+ // DomainsSourceAPICallDuration is the time it takes to get a response from the GitLab API in seconds
+ DomainsSourceAPICallDuration = prometheus.NewGaugeVec(prometheus.GaugeOpts{
+ Name: "gitlab_pages_domains_source_api_call_duration",
+ Help: "The time (in seconds) it takes to get a response from the GitLab domains API",
+ }, []string{"status_code"})
)
-func init() {
- prometheus.MustRegister(DomainsServed)
- prometheus.MustRegister(FailedDomainUpdates)
- prometheus.MustRegister(DomainUpdates)
- prometheus.MustRegister(DomainLastUpdateTime)
- prometheus.MustRegister(DomainsConfigurationUpdateDuration)
- prometheus.MustRegister(DomainsSourceCacheHit)
- prometheus.MustRegister(DomainsSourceCacheMiss)
- prometheus.MustRegister(ServerlessRequests)
- prometheus.MustRegister(ServerlessLatency)
+// MustRegister collectors with the Prometheus client
+func MustRegister() {
+ prometheus.MustRegister(
+ DomainsServed,
+ DomainFailedUpdates,
+ DomainUpdates,
+ DomainLastUpdateTime,
+ DomainsConfigurationUpdateDuration,
+ DomainsSourceCacheHit,
+ DomainsSourceCacheMiss,
+ DomainsSourceAPIReqTotal,
+ DomainsSourceAPICallDuration,
+ ServerlessRequests,
+ ServerlessLatency,
+ )
}