mirror of
https://github.com/nais/wonderwall.git
synced 2026-02-14 17:49:54 +00:00
Co-authored-by: Trong Huu Nguyen <trong.huu.nguyen@nav.no> Co-authored-by: Sindre Rødseth Hansen <sindre.rodseth.hansen@nav.no>
120 lines
3.8 KiB
YAML
120 lines
3.8 KiB
YAML
title: Wonderwall
|
|
editable: true
|
|
tags: [generated, yaml]
|
|
auto_refresh: 1m
|
|
time: ["now-24h", "now"]
|
|
timezone: default # valid values are: utc, browser, default
|
|
|
|
# Render to JSON using https://github.com/K-Phoen/grabana v0.17.0 or newer
|
|
# Import into Grafana using UI (remember to select folder)
|
|
|
|
variables:
|
|
- custom:
|
|
name: env
|
|
default: dev
|
|
values_map:
|
|
dev: dev
|
|
prod: prod
|
|
- query:
|
|
name: namespace
|
|
label: Namespace
|
|
datasource: $env-gcp
|
|
request: "label_values(kube_pod_container_info{container=\"wonderwall\"}, namespace)"
|
|
include_all: true
|
|
default_all: true
|
|
all_value: ".*"
|
|
- datasource:
|
|
name: ds
|
|
type: prometheus
|
|
regex: $env-gcp
|
|
include_all: true
|
|
hide: variable
|
|
- query:
|
|
name: redis_op
|
|
label: Redis Operation
|
|
datasource: $env-gcp
|
|
request: "label_values(wonderwall_redis_latency_bucket, operation)"
|
|
include_all: true
|
|
default_all: true
|
|
hide: variable
|
|
|
|
rows:
|
|
- name: Versions
|
|
collapse: false
|
|
panels:
|
|
- single_stat:
|
|
title: Sidecar versions in use
|
|
datasource: $ds
|
|
transparent: true
|
|
span: 12
|
|
targets:
|
|
- prometheus:
|
|
query: count(label_replace(kube_pod_container_info{container="wonderwall",namespace=~"$namespace"}, "version", "$1", "image", ".*:(.*)")) by (version)
|
|
legend: "{{ version }}"
|
|
instant: true
|
|
- name: Resource usage
|
|
collapse: false
|
|
panels:
|
|
- graph:
|
|
title: Memory usage - $ds
|
|
datasource: $ds
|
|
transparent: true
|
|
targets:
|
|
- prometheus:
|
|
query: sum(container_memory_working_set_bytes{container="wonderwall",namespace=~"$namespace"}) by (pod, namespace)
|
|
legend: "working set {{ pod }} in {{ namespace }}"
|
|
- prometheus:
|
|
query: sum(container_memory_usage_bytes{container="wonderwall",namespace=~"$namespace"}) by (pod, namespace)
|
|
legend: "Resident set size {{ pod }} in {{ namespace }}"
|
|
- graph:
|
|
title: CPU usage - $ds
|
|
datasource: $ds
|
|
transparent: true
|
|
targets:
|
|
- prometheus:
|
|
query: sum(irate(container_cpu_usage_seconds_total{container="wonderwall",namespace=~"$namespace"}[2m])) by (pod, namespace)
|
|
legend: "{{ pod }} in {{ namespace }}"
|
|
- name: HTTP
|
|
collapse: false
|
|
panels:
|
|
- graph:
|
|
title: HTTP requests
|
|
datasource: $ds
|
|
transparent: true
|
|
targets:
|
|
- prometheus:
|
|
query: sum(rate(requests_total{job="wonderwall",namespace=~"$namespace"}[5m])) by (code)
|
|
legend: "{{ code }}"
|
|
- graph:
|
|
title: HTTP latency
|
|
datasource: $ds
|
|
transparent: true
|
|
targets:
|
|
- prometheus:
|
|
query: sum(irate(request_duration_seconds_sum{job="wonderwall",namespace=~"$namespace"}[2m])) by (path)
|
|
legend: "{{ path }}"
|
|
- name: Redis Latency
|
|
collapse: false
|
|
panels:
|
|
- heatmap:
|
|
# Must be done manually in Grafana after import: Set max datapoints to 25
|
|
title: $redis_op
|
|
datasource: $ds
|
|
repeat: redis_op
|
|
data_format: time_series_buckets
|
|
hide_zero_buckets: true
|
|
transparent: true
|
|
span: 4
|
|
tooltip:
|
|
show: true
|
|
showhistogram: false
|
|
decimals: 0
|
|
yaxis:
|
|
unit: "dtdurations"
|
|
decimals: 0
|
|
targets:
|
|
- prometheus:
|
|
query: sum(increase(wonderwall_redis_latency_bucket{operation="$redis_op",namespace=~"$namespace"}[$__interval])) by (le)
|
|
legend: "{{ le }}"
|
|
format: heatmap
|