diff --git a/cortex-mixin/dashboards/dashboard-utils.libsonnet b/cortex-mixin/dashboards/dashboard-utils.libsonnet index 037860f1..78917a66 100644 --- a/cortex-mixin/dashboards/dashboard-utils.libsonnet +++ b/cortex-mixin/dashboards/dashboard-utils.libsonnet @@ -126,35 +126,10 @@ local utils = import 'mixin-utils/utils.libsonnet'; }, containerCPUUsagePanel(title, containerName):: - local config = $._config { - namespaceMatcher: $.namespaceMatcher(), - containerName: containerName, - }; $.panel(title) + $.queryPanel([ - ||| - sum by(%(per_instance_label)s) ( - rate( - container_cpu_usage_seconds_total{ - %(namespaceMatcher)s, - container="%(containerName)s" - }[$__rate_interval] - ) - ) - ||| % config, - ||| - min( - container_spec_cpu_quota{ - %(namespaceMatcher)s, - container="%(containerName)s" - } - / - container_spec_cpu_period{ - %(namespaceMatcher)s, - container="%(containerName)s" - } - ) - ||| % config, + 'sum by(%s) (rate(container_cpu_usage_seconds_total{%s,container="%s"}[$__rate_interval]))' % [$._config.per_instance_label, $.namespaceMatcher(), containerName], + 'min(container_spec_cpu_quota{%s,container="%s"} / container_spec_cpu_period{%s,container="%s"})' % [$.namespaceMatcher(), containerName, $.namespaceMatcher(), containerName], ], ['{{%s}}' % $._config.per_instance_label, 'limit']) + { seriesOverrides: [ @@ -169,39 +144,11 @@ local utils = import 'mixin-utils/utils.libsonnet'; containerMemoryWorkingSetPanel(title, containerName):: $.panel(title) + - $.queryPanel( - [ - // We use "max" instead of "sum" otherwise during a rolling update of a statefulset we will end up - // summing the memory of the old instance/pod (whose metric will be stale for 5m) to the new instance/pod. - ||| - max by(%s) ( - container_memory_working_set_bytes{ - %s, - container="%s" - } - ) - ||| % [$._config.per_instance_label, $.namespaceMatcher(), containerName], - ||| - min( - container_spec_memory_limit_bytes{ - %s, - container="%s" - } > 0 - ) - ||| % [$.namespaceMatcher(), containerName], - ], ['{{%s}}' % $._config.per_instance_label, 'limit'] - ) + - { - seriesOverrides: [ - { - alias: 'limit', - color: '#E02F44', - fill: 0, - }, - ], - yaxes: $.yaxes('bytes'), - tooltip: { sort: 2 }, // Sort descending. - }, + $.queryPanel([ + // We use "max" instead of "sum" otherwise during a rolling update of a statefulset we will end up + // summing the memory of the old instance/pod (whose metric will be stale for 5m) to the new instance/pod. + 'max by(%s) (container_memory_working_set_bytes{%s,container="%s"})' % [$._config.per_instance_label, $.namespaceMatcher(), containerName], + 'min(container_spec_memory_limit_bytes{%s,container="%s"} > 0)' % [$.namespaceMatcher(), containerName], containerNetworkPanel(title, metric, instanceName):: $.panel(title) + @@ -452,31 +399,6 @@ local utils = import 'mixin-utils/utils.libsonnet'; filterNodeDiskContainer(containerName):: ||| - ignoring(%s) group_right() ( - label_replace( - count by( - %s, - %s, - device - ) - ( - container_fs_writes_bytes_total{ - %s, - container="%s", - device!~".*sda.*" - } - ), - "device", - "$1", - "device", - "/dev/(.*)" - ) * 0 - ) - ||| % [ - $._config.per_instance_label, - $._config.per_node_label, - $._config.per_instance_label, - $.namespaceMatcher(), - containerName, - ], + ignoring(%s) group_right() (label_replace(count by(%s, %s, device) (container_fs_writes_bytes_total{%s,container="%s",device!~".*sda.*"}), "device", "$1", "device", "/dev/(.*)") * 0) + ||| % [$._config.per_instance_label, $._config.per_node_label, $._config.per_instance_label, $.namespaceMatcher(), containerName], }