summaryrefslogtreecommitdiff
path: root/doc/development
diff options
context:
space:
mode:
authorThong Kuah <tkuah@gitlab.com>2019-09-03 14:24:26 +0000
committerAchilleas Pipinellis <axil@gitlab.com>2019-09-03 14:24:26 +0000
commit74effdcfcd9faadce07eaabfe69857492d8723b7 (patch)
tree1fd843d8b584ad1613317af07d94af31ec51c1f4 /doc/development
parent4c896c81eafeee480342267c98a1884ad30c8ac3 (diff)
downloadgitlab-ce-74effdcfcd9faadce07eaabfe69857492d8723b7.tar.gz
Development docs: how to add Prometheus metrics
This documents the various knowledge needed to add new GitLab self-monitoring Prometheus metrics.
Diffstat (limited to 'doc/development')
-rw-r--r--doc/development/prometheus_metrics.md23
1 files changed, 23 insertions, 0 deletions
diff --git a/doc/development/prometheus_metrics.md b/doc/development/prometheus_metrics.md
index 576601372a3..2a34851d21c 100644
--- a/doc/development/prometheus_metrics.md
+++ b/doc/development/prometheus_metrics.md
@@ -44,3 +44,26 @@ class ImportCommonMetrics < ActiveRecord::Migration[4.2]
end
end
```
+
+## GitLab Prometheus metrics
+
+GitLab provides [Prometheus metrics](../administration/monitoring/prometheus/gitlab_metrics.md)
+to monitor itself.
+
+### Adding a new metric
+
+This section describes how to add new metrics for self-monitoring
+([example](https://gitlab.com/gitlab-org/gitlab-ee/merge_requests/15440)).
+
+1. Select the [type of metric](https://gitlab.com/gitlab-org/prometheus-client-mmap#metrics):
+
+ - `Gitlab::Metrics.counter`
+ - `Gitlab::Metrics.gauge`
+ - `Gitlab::Metrics.histogram`
+ - `Gitlab::Metrics.summary`
+
+1. Select the appropriate name for your metric. Refer to the guidelines
+ for [Prometheus metric names](https://prometheus.io/docs/practices/naming/#metric-names).
+1. Update the list of [GitLab Prometheus metrics](../administration/monitoring/prometheus/gitlab_metrics.md).
+1. Trigger the relevant page/code that will record the new metric.
+1. Check that the new metric appears at `/-/metrics`.