2017-09-10 17:25:29 +05:30
- group : Response metrics (NGINX Ingress)
priority : 10
metrics :
- title : "Throughput"
y_label : "Requests / Sec"
required_metrics :
2018-03-17 18:26:18 +05:30
- nginx_upstream_responses_total
2017-09-10 17:25:29 +05:30
weight : 1
queries :
2018-03-17 18:26:18 +05:30
- query_range : 'sum(rate(nginx_upstream_responses_total{upstream=~"%{kube_namespace}-%{ci_environment_slug}-.*"}[2m])) by (status_code)'
2017-09-10 17:25:29 +05:30
unit : req / sec
2018-03-17 18:26:18 +05:30
label : Status Code
series :
- label : status_code
when :
- value : 2xx
color : green
- value : 4xx
color : orange
- value : 5xx
color : red
2017-09-10 17:25:29 +05:30
- title : "Latency"
y_label : "Latency (ms)"
required_metrics :
- nginx_upstream_response_msecs_avg
weight : 1
queries :
- query_range : 'avg(nginx_upstream_response_msecs_avg{upstream=~"%{kube_namespace}-%{ci_environment_slug}-.*"})'
2018-05-09 12:01:36 +05:30
label : Pod average
2017-09-10 17:25:29 +05:30
unit : ms
- title : "HTTP Error Rate"
y_label : "HTTP 500 Errors / Sec"
required_metrics :
- nginx_upstream_responses_total
weight : 1
queries :
- query_range : 'sum(rate(nginx_upstream_responses_total{status_code="5xx", upstream=~"%{kube_namespace}-%{ci_environment_slug}-.*"}[2m]))'
label : HTTP Errors
unit : "errors / sec"
- group : Response metrics (HA Proxy)
priority : 10
metrics :
- title : "Throughput"
y_label : "Requests / Sec"
required_metrics :
- haproxy_frontend_http_requests_total
weight : 1
queries :
2018-03-17 18:26:18 +05:30
- query_range : 'sum(rate(haproxy_frontend_http_requests_total{%{environment_filter}}[2m])) by (code)'
2017-09-10 17:25:29 +05:30
unit : req / sec
2018-03-17 18:26:18 +05:30
series :
- label : code
when :
- value : 2xx
color : green
- value : 4xx
color : yellow
- value : 5xx
color : red
2017-09-10 17:25:29 +05:30
- title : "HTTP Error Rate"
y_label : "Error Rate (%)"
required_metrics :
- haproxy_frontend_http_responses_total
weight : 1
queries :
- 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
unit : "%"
- group : Response metrics (AWS ELB)
priority : 10
metrics :
- title : "Throughput"
y_label : "Requests / Sec"
required_metrics :
- aws_elb_request_count_sum
weight : 1
queries :
- query_range : 'sum(aws_elb_request_count_sum{%{environment_filter}}) / 60'
label : Total
unit : req / sec
- title : "Latency"
y_label : "Latency (ms)"
required_metrics :
- aws_elb_latency_average
weight : 1
queries :
- query_range : 'avg(aws_elb_latency_average{%{environment_filter}}) * 1000'
label : Average
unit : ms
- title : "HTTP Error Rate"
y_label : "Error Rate (%)"
required_metrics :
- aws_elb_request_count_sum
- aws_elb_httpcode_backend_5_xx_sum
weight : 1
queries :
- query_range : 'sum(aws_elb_httpcode_backend_5_xx_sum{%{environment_filter}}) / sum(aws_elb_request_count_sum{%{environment_filter}})'
label : HTTP Errors
unit : "%"
- group : Response metrics (NGINX)
priority : 10
metrics :
- title : "Throughput"
y_label : "Requests / Sec"
required_metrics :
2018-03-17 18:26:18 +05:30
- nginx_responses_total
2017-09-10 17:25:29 +05:30
weight : 1
queries :
2018-03-17 18:26:18 +05:30
- query_range : 'sum(rate(nginx_responses_total{server_zone!="*", server_zone!="_", %{environment_filter}}[2m])) by (status_code)'
2017-09-10 17:25:29 +05:30
unit : req / sec
2018-03-17 18:26:18 +05:30
label : Status Code
series :
- label : status_code
when :
- value : 2xx
color : green
- value : 4xx
color : orange
- value : 5xx
color : red
2017-09-10 17:25:29 +05:30
- title : "Latency"
y_label : "Latency (ms)"
required_metrics :
- nginx_upstream_response_msecs_avg
weight : 1
queries :
- query_range : 'avg(nginx_upstream_response_msecs_avg{%{environment_filter}})'
label : Upstream
unit : ms
- title : "HTTP Error Rate"
y_label : "HTTP 500 Errors / Sec"
required_metrics :
- nginx_responses_total
weight : 1
queries :
- query_range : 'sum(rate(nginx_responses_total{status_code="5xx", %{environment_filter}}[2m]))'
label : HTTP Errors
unit : "errors / sec"
- group : System metrics (Kubernetes)
priority : 5
metrics :
2018-05-09 12:01:36 +05:30
- title : "Memory Usage (Total)"
y_label : "Total Memory Used"
required_metrics :
- container_memory_usage_bytes
weight : 4
queries :
- 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
unit : GB
- title : "Core Usage (Total)"
y_label : "Total Cores"
required_metrics :
- container_cpu_usage_seconds_total
weight : 3
queries :
- 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
unit : "cores"
- title : "Memory Usage (Pod average)"
2018-03-27 19:54:05 +05:30
y_label : "Memory Used per Pod"
2017-09-10 17:25:29 +05:30
required_metrics :
- container_memory_usage_bytes
2018-05-09 12:01:36 +05:30
weight : 2
2017-09-10 17:25:29 +05:30
queries :
2018-05-09 12:01:36 +05:30
- query_range : 'avg(sum(container_memory_usage_bytes{container_name!="POD",pod_name=~"^%{ci_environment_slug}-(.*)",namespace="%{kube_namespace}"}) by (job)) without (job) / count(avg(container_memory_usage_bytes{container_name!="POD",pod_name=~"^%{ci_environment_slug}-(.*)",namespace="%{kube_namespace}"}) without (job)) /1024/1024'
label : Pod average
2017-09-10 17:25:29 +05:30
unit : MB
2018-05-09 12:01:36 +05:30
- title : "Core Usage (Pod average)"
2018-03-27 19:54:05 +05:30
y_label : "Cores per Pod"
2017-09-10 17:25:29 +05:30
required_metrics :
- container_cpu_usage_seconds_total
weight : 1
queries :
2018-05-09 12:01:36 +05:30
- 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) / count(sum(rate(container_cpu_usage_seconds_total{container_name!="POD",pod_name=~"^%{ci_environment_slug}-(.*)",namespace="%{kube_namespace}"}[15m])) by (pod_name))'
label : Pod average
2018-03-27 19:54:05 +05:30
unit : "cores"