Updates label value to include units in metrics
This MR updates the y_label values and the label values in common_metrics and cluster_metrics to append the units of measurement to the labels.
This commit is contained in:
parent
fc3d0595c4
commit
5a96c05343
4 changed files with 47 additions and 29 deletions
|
@ -0,0 +1,5 @@
|
|||
---
|
||||
title: 'fix: updates to include units for the y axis label'
|
||||
merge_request: 30330
|
||||
author:
|
||||
type: fixed
|
|
@ -2,12 +2,12 @@
|
|||
priority: 1
|
||||
metrics:
|
||||
- title: "CPU Usage"
|
||||
y_label: "CPU"
|
||||
y_label: "CPU (cores)"
|
||||
required_metrics: ['container_cpu_usage_seconds_total']
|
||||
weight: 1
|
||||
queries:
|
||||
- query_range: 'avg(sum(rate(container_cpu_usage_seconds_total{id="/"}[15m])) by (job)) without (job)'
|
||||
label: Usage
|
||||
label: Usage (cores)
|
||||
unit: "cores"
|
||||
appearance:
|
||||
line:
|
||||
|
@ -15,7 +15,7 @@
|
|||
area:
|
||||
opacity: 0
|
||||
- query_range: 'sum(kube_pod_container_resource_requests_cpu_cores{kubernetes_namespace="gitlab-managed-apps"})'
|
||||
label: Requested
|
||||
label: Requested (cores)
|
||||
unit: "cores"
|
||||
appearance:
|
||||
line:
|
||||
|
@ -23,7 +23,7 @@
|
|||
area:
|
||||
opacity: 0
|
||||
- query_range: 'sum(kube_node_status_capacity_cpu_cores{kubernetes_namespace="gitlab-managed-apps"})'
|
||||
label: Capacity
|
||||
label: Capacity (cores)
|
||||
unit: "cores"
|
||||
appearance:
|
||||
line:
|
||||
|
@ -32,12 +32,12 @@
|
|||
area:
|
||||
opacity: 0
|
||||
- title: "Memory usage"
|
||||
y_label: "Memory"
|
||||
y_label: "Memory (GiB)"
|
||||
required_metrics: ['container_memory_usage_bytes']
|
||||
weight: 1
|
||||
queries:
|
||||
- query_range: 'avg(sum(container_memory_usage_bytes{id="/"}) by (job)) without (job) / 2^30'
|
||||
label: Usage
|
||||
label: Usage (GiB)
|
||||
unit: "GiB"
|
||||
appearance:
|
||||
line:
|
||||
|
@ -45,7 +45,7 @@
|
|||
area:
|
||||
opacity: 0
|
||||
- query_range: 'sum(kube_pod_container_resource_requests_memory_bytes{kubernetes_namespace="gitlab-managed-apps"})/2^30'
|
||||
label: Requested
|
||||
label: Requested (GiB)
|
||||
unit: "GiB"
|
||||
appearance:
|
||||
line:
|
||||
|
@ -53,7 +53,7 @@
|
|||
area:
|
||||
opacity: 0
|
||||
- query_range: 'sum(kube_node_status_capacity_memory_bytes{kubernetes_namespace="gitlab-managed-apps"})/2^30'
|
||||
label: Capacity
|
||||
label: Capacity (GiB)
|
||||
unit: "GiB"
|
||||
appearance:
|
||||
line:
|
||||
|
|
|
@ -21,16 +21,16 @@ panel_groups:
|
|||
metrics:
|
||||
- id: response_metrics_nginx_ingress_latency_pod_average
|
||||
query_range: 'avg(nginx_upstream_response_msecs_avg{upstream=~"%{kube_namespace}-%{ci_environment_slug}-.*"})'
|
||||
label: Pod average
|
||||
label: Pod average (ms)
|
||||
unit: ms
|
||||
- title: "HTTP Error Rate"
|
||||
type: "area-chart"
|
||||
y_label: "HTTP Errors"
|
||||
y_label: "HTTP Errors (%)"
|
||||
weight: 1
|
||||
metrics:
|
||||
- id: response_metrics_nginx_ingress_http_error_rate
|
||||
query_range: 'sum(rate(nginx_upstream_responses_total{status_code="5xx", upstream=~"%{kube_namespace}-%{ci_environment_slug}-.*"}[2m])) / sum(rate(nginx_upstream_responses_total{upstream=~"%{kube_namespace}-%{ci_environment_slug}-.*"}[2m])) * 100'
|
||||
label: 5xx Errors
|
||||
label: 5xx Errors (%)
|
||||
unit: "%"
|
||||
# NGINX Ingress metrics for post-0.16.0 versions
|
||||
- group: Response metrics (NGINX Ingress)
|
||||
|
@ -52,16 +52,16 @@ panel_groups:
|
|||
metrics:
|
||||
- id: response_metrics_nginx_ingress_16_latency_pod_average
|
||||
query_range: 'sum(rate(nginx_ingress_controller_ingress_upstream_latency_seconds_sum{namespace="%{kube_namespace}",ingress=~".*%{ci_environment_slug}.*"}[2m])) / sum(rate(nginx_ingress_controller_ingress_upstream_latency_seconds_count{namespace="%{kube_namespace}",ingress=~".*%{ci_environment_slug}.*"}[2m])) * 1000'
|
||||
label: Pod average
|
||||
label: Pod average (ms)
|
||||
unit: ms
|
||||
- title: "HTTP Error Rate"
|
||||
type: "area-chart"
|
||||
y_label: "HTTP Errors"
|
||||
y_label: "HTTP Errors (%)"
|
||||
weight: 1
|
||||
metrics:
|
||||
- id: response_metrics_nginx_ingress_16_http_error_rate
|
||||
query_range: 'sum(rate(nginx_ingress_controller_requests{status=~"5.*",namespace="%{kube_namespace}",ingress=~".*%{ci_environment_slug}.*"}[2m])) / sum(rate(nginx_ingress_controller_requests{namespace="%{kube_namespace}",ingress=~".*%{ci_environment_slug}.*"}[2m])) * 100'
|
||||
label: 5xx Errors
|
||||
label: 5xx Errors (%)
|
||||
unit: "%"
|
||||
- group: Response metrics (HA Proxy)
|
||||
priority: 10
|
||||
|
@ -82,7 +82,7 @@ panel_groups:
|
|||
metrics:
|
||||
- id: response_metrics_ha_proxy_http_error_rate
|
||||
query_range: 'sum(rate(haproxy_frontend_http_responses_total{code="5xx",%{environment_filter}}[2m])) / sum(rate(haproxy_frontend_http_responses_total{%{environment_filter}}[2m]))'
|
||||
label: HTTP Errors
|
||||
label: HTTP Errors (%)
|
||||
unit: "%"
|
||||
- group: Response metrics (AWS ELB)
|
||||
priority: 10
|
||||
|
@ -94,7 +94,7 @@ panel_groups:
|
|||
metrics:
|
||||
- id: response_metrics_aws_elb_throughput_requests
|
||||
query_range: 'sum(aws_elb_request_count_sum{%{environment_filter}}) / 60'
|
||||
label: Total
|
||||
label: Total (req/sec)
|
||||
unit: req / sec
|
||||
- title: "Latency"
|
||||
type: "area-chart"
|
||||
|
@ -103,7 +103,7 @@ panel_groups:
|
|||
metrics:
|
||||
- id: response_metrics_aws_elb_latency_average
|
||||
query_range: 'avg(aws_elb_latency_average{%{environment_filter}}) * 1000'
|
||||
label: Average
|
||||
label: Average (ms)
|
||||
unit: ms
|
||||
- title: "HTTP Error Rate"
|
||||
type: "area-chart"
|
||||
|
@ -112,7 +112,7 @@ panel_groups:
|
|||
metrics:
|
||||
- id: response_metrics_aws_elb_http_error_rate
|
||||
query_range: 'sum(aws_elb_httpcode_backend_5_xx_sum{%{environment_filter}}) / sum(aws_elb_request_count_sum{%{environment_filter}})'
|
||||
label: HTTP Errors
|
||||
label: HTTP Errors (%)
|
||||
unit: "%"
|
||||
- group: Response metrics (NGINX)
|
||||
priority: 10
|
||||
|
@ -133,9 +133,9 @@ panel_groups:
|
|||
metrics:
|
||||
- id: response_metrics_nginx_latency
|
||||
query_range: 'avg(nginx_server_requestMsec{%{environment_filter}})'
|
||||
label: Upstream
|
||||
label: Upstream (ms)
|
||||
unit: ms
|
||||
- title: "HTTP Error Rate"
|
||||
- title: "HTTP Error Rate (Errors / Sec)"
|
||||
type: "area-chart"
|
||||
y_label: "HTTP 500 Errors / Sec"
|
||||
weight: 1
|
||||
|
@ -149,12 +149,12 @@ panel_groups:
|
|||
panels:
|
||||
- title: "Memory Usage (Total)"
|
||||
type: "area-chart"
|
||||
y_label: "Total Memory Used"
|
||||
y_label: "Total Memory Used (GB)"
|
||||
weight: 4
|
||||
metrics:
|
||||
- id: system_metrics_kubernetes_container_memory_total
|
||||
query_range: 'avg(sum(container_memory_usage_bytes{container_name!="POD",pod_name=~"^%{ci_environment_slug}-(.*)",namespace="%{kube_namespace}"}) by (job)) without (job) /1024/1024/1024'
|
||||
label: Total
|
||||
label: Total (GB)
|
||||
unit: GB
|
||||
- title: "Core Usage (Total)"
|
||||
type: "area-chart"
|
||||
|
@ -163,25 +163,25 @@ panel_groups:
|
|||
metrics:
|
||||
- id: system_metrics_kubernetes_container_cores_total
|
||||
query_range: 'avg(sum(rate(container_cpu_usage_seconds_total{container_name!="POD",pod_name=~"^%{ci_environment_slug}-(.*)",namespace="%{kube_namespace}"}[15m])) by (job)) without (job)'
|
||||
label: Total
|
||||
label: Total (cores)
|
||||
unit: "cores"
|
||||
- title: "Memory Usage (Pod average)"
|
||||
type: "area-chart"
|
||||
y_label: "Memory Used per Pod"
|
||||
y_label: "Memory Used per Pod (MB)"
|
||||
weight: 2
|
||||
metrics:
|
||||
- id: system_metrics_kubernetes_container_memory_average
|
||||
query_range: 'avg(sum(container_memory_usage_bytes{container_name!="POD",pod_name=~"^%{ci_environment_slug}-([^c].*|c([^a]|a([^n]|n([^a]|a([^r]|r[^y])))).*|)-(.*)",namespace="%{kube_namespace}"}) by (job)) without (job) / count(avg(container_memory_usage_bytes{container_name!="POD",pod_name=~"^%{ci_environment_slug}-([^c].*|c([^a]|a([^n]|n([^a]|a([^r]|r[^y])))).*|)-(.*)",namespace="%{kube_namespace}"}) without (job)) /1024/1024'
|
||||
label: Pod average
|
||||
label: Pod average (MB)
|
||||
unit: MB
|
||||
- title: "Canary: Memory Usage (Pod Average)"
|
||||
type: "area-chart"
|
||||
y_label: "Memory Used per Pod"
|
||||
y_label: "Memory Used per Pod (MB)"
|
||||
weight: 2
|
||||
metrics:
|
||||
- id: system_metrics_kubernetes_container_memory_average_canary
|
||||
query_range: 'avg(sum(container_memory_usage_bytes{container_name!="POD",pod_name=~"^%{ci_environment_slug}-canary-(.*)",namespace="%{kube_namespace}"}) by (job)) without (job) / count(avg(container_memory_usage_bytes{container_name!="POD",pod_name=~"^%{ci_environment_slug}-canary-(.*)",namespace="%{kube_namespace}"}) without (job)) /1024/1024'
|
||||
label: Pod average
|
||||
label: Pod average (MB)
|
||||
unit: MB
|
||||
track: canary
|
||||
- title: "Core Usage (Pod Average)"
|
||||
|
@ -191,7 +191,7 @@ panel_groups:
|
|||
metrics:
|
||||
- id: system_metrics_kubernetes_container_core_usage
|
||||
query_range: 'avg(sum(rate(container_cpu_usage_seconds_total{container_name!="POD",pod_name=~"^%{ci_environment_slug}-([^c].*|c([^a]|a([^n]|n([^a]|a([^r]|r[^y])))).*|)-(.*)",namespace="%{kube_namespace}"}[15m])) by (job)) without (job) / count(sum(rate(container_cpu_usage_seconds_total{container_name!="POD",pod_name=~"^%{ci_environment_slug}-([^c].*|c([^a]|a([^n]|n([^a]|a([^r]|r[^y])))).*|)-(.*)",namespace="%{kube_namespace}"}[15m])) by (pod_name))'
|
||||
label: Pod average
|
||||
label: Pod average (cores)
|
||||
unit: "cores"
|
||||
- title: "Canary: Core Usage (Pod Average)"
|
||||
type: "area-chart"
|
||||
|
@ -200,7 +200,7 @@ panel_groups:
|
|||
metrics:
|
||||
- id: system_metrics_kubernetes_container_core_usage_canary
|
||||
query_range: 'avg(sum(rate(container_cpu_usage_seconds_total{container_name!="POD",pod_name=~"^%{ci_environment_slug}-canary-(.*)",namespace="%{kube_namespace}"}[15m])) by (job)) without (job) / count(sum(rate(container_cpu_usage_seconds_total{container_name!="POD",pod_name=~"^%{ci_environment_slug}-canary-(.*)",namespace="%{kube_namespace}"}[15m])) by (pod_name))'
|
||||
label: Pod average
|
||||
label: Pod average (cores)
|
||||
unit: "cores"
|
||||
track: canary
|
||||
- title: "Knative function invocations"
|
||||
|
|
13
db/migrate/20190709220014_import_common_metrics_y_axis.rb
Normal file
13
db/migrate/20190709220014_import_common_metrics_y_axis.rb
Normal file
|
@ -0,0 +1,13 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
class ImportCommonMetricsYAxis < ActiveRecord::Migration[5.1]
|
||||
DOWNTIME = false
|
||||
|
||||
def up
|
||||
::Gitlab::DatabaseImporters::CommonMetrics::Importer.new.execute
|
||||
end
|
||||
|
||||
def down
|
||||
# no-op
|
||||
end
|
||||
end
|
Loading…
Reference in a new issue