diff options
author | Jaime Martinez <jmartinez@gitlab.com> | 2020-06-09 10:18:00 +0300 |
---|---|---|
committer | Jaime Martinez <jmartinez@gitlab.com> | 2020-06-09 10:18:00 +0300 |
commit | ea75c36b1220b4d741d26a7963b4afb50ebded56 (patch) | |
tree | 871ee0ad68de9cd726269822dd627a7a3e78277e | |
parent | e96f9d00469050d3548ee45928b2a5b6733a3a7d (diff) |
Use histogram without labels
Register ServingTime.
Rename DiskServingFileSize so that it's a histogram without
needing labels
-rw-r--r-- | acceptance_test.go | 2 | ||||
-rw-r--r-- | internal/serving/disk/reader.go | 6 | ||||
-rw-r--r-- | internal/serving/disk/serving.go | 2 | ||||
-rw-r--r-- | metrics/metrics.go | 11 |
4 files changed, 12 insertions, 9 deletions
diff --git a/acceptance_test.go b/acceptance_test.go index 1cd854d3..7cd2d52d 100644 --- a/acceptance_test.go +++ b/acceptance_test.go @@ -405,6 +405,8 @@ func TestPrometheusMetricsCanBeScraped(t *testing.T) { require.Contains(t, string(body), "gitlab_pages_domains_source_failures_total 0") require.Contains(t, string(body), "gitlab_pages_serverless_requests 0") require.Contains(t, string(body), "gitlab_pages_serverless_latency_sum 0") + require.Contains(t, string(body), "gitlab_pages_disk_serving_file_size_sum 0") + require.Contains(t, string(body), "gitlab_pages_serving_time_sum 0") } func TestStatusPage(t *testing.T) { diff --git a/internal/serving/disk/reader.go b/internal/serving/disk/reader.go index 83fe3378..b8dce542 100644 --- a/internal/serving/disk/reader.go +++ b/internal/serving/disk/reader.go @@ -17,7 +17,7 @@ import ( // Reader is a disk access driver type Reader struct { - fileSizeMetric *prometheus.HistogramVec + fileSizeMetric prometheus.Histogram } func (reader *Reader) tryFile(h serving.Handler) error { @@ -144,7 +144,7 @@ func (reader *Reader) serveFile(w http.ResponseWriter, r *http.Request, origPath return err } - reader.fileSizeMetric.With(prometheus.Labels{"serving_type": "disk", "content_type": contentType}).Observe(float64(fi.Size())) + reader.fileSizeMetric.Observe(float64(fi.Size())) w.Header().Set("Content-Type", contentType) http.ServeContent(w, r, origPath, fi.ModTime(), file) @@ -172,7 +172,7 @@ func (reader *Reader) serveCustomFile(w http.ResponseWriter, r *http.Request, co return err } - reader.fileSizeMetric.With(prometheus.Labels{"serving_type": "disk", "content_type": contentType}).Observe(float64(fi.Size())) + reader.fileSizeMetric.Observe(float64(fi.Size())) w.Header().Set("Content-Type", contentType) w.Header().Set("Content-Length", strconv.FormatInt(fi.Size(), 10)) diff --git a/internal/serving/disk/serving.go b/internal/serving/disk/serving.go index 94a6d001..f5ec0d78 100644 --- a/internal/serving/disk/serving.go +++ b/internal/serving/disk/serving.go @@ -8,7 +8,7 @@ import ( var disk = &Disk{ reader: Reader{ - fileSizeMetric: metrics.ServingFileSize, + fileSizeMetric: metrics.DiskServingFileSize, }, } diff --git a/metrics/metrics.go b/metrics/metrics.go index 7e6d72e1..1266a3aa 100644 --- a/metrics/metrics.go +++ b/metrics/metrics.go @@ -77,11 +77,11 @@ var ( Help: "The time (in seconds) it takes to get a response from the GitLab domains API", }, []string{"status_code"}) - // ServingFileSize metric for file size serving. serving_types: disk and object_storage - ServingFileSize = prometheus.NewHistogramVec(prometheus.HistogramOpts{ - Name: "gitlab_pages_serving_file_size", + // DiskServingFileSize metric for file size serving. serving_types: disk and object_storage + DiskServingFileSize = prometheus.NewHistogram(prometheus.HistogramOpts{ + Name: "gitlab_pages_disk_serving_file_size", Help: "The size in bytes for each file that has been served", - }, []string{"serving_type", "content_type"}) + }) // ServingTime metric for time taken to find a file serving it or not found. ServingTime = prometheus.NewHistogram(prometheus.HistogramOpts{ @@ -105,6 +105,7 @@ func MustRegister() { DomainsSourceFailures, ServerlessRequests, ServerlessLatency, - ServingFileSize, + DiskServingFileSize, + ServingTime, ) } |