diff options
author | Ilya Mashchenko <ilya@netdata.cloud> | 2022-04-22 10:58:05 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-04-22 10:58:05 +0300 |
commit | 58950a238b7c3362a8c9c27f47d22401d6529c28 (patch) | |
tree | 03300e0a65f24287ae2001fc53a4bb1e80be38d5 /collectors/cgroups.plugin | |
parent | 58ba599bf74c61b283a812c034c80e75998eb279 (diff) |
feat(cgroups.plugin): add k8s_qos_class label (#12737)
* add k8s_qos_class label
* simplify
Diffstat (limited to 'collectors/cgroups.plugin')
-rwxr-xr-x | collectors/cgroups.plugin/cgroup-name.sh.in | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/collectors/cgroups.plugin/cgroup-name.sh.in b/collectors/cgroups.plugin/cgroup-name.sh.in index 1f31c49a73..0911df4313 100755 --- a/collectors/cgroups.plugin/cgroup-name.sh.in +++ b/collectors/cgroups.plugin/cgroup-name.sh.in @@ -273,12 +273,20 @@ function k8s_get_kubepod_name() { return 1 fi + local qos_class + if [[ $clean_id =~ .+(besteffort|burstable) ]]; then + qos_class="${BASH_REMATCH[1]}" + else + qos_class="guaranteed" + fi + # available labels: # namespace, pod_name, pod_uid, container_name, container_id, node_name local labels if [ -n "$cntr_id" ]; then if labels=$(grep "$cntr_id" <<< "$containers" 2> /dev/null); then labels+=',kind="container"' + labels+=",qos_class=\"$qos_class\"" [ -n "$kube_system_uid" ] && [ "$kube_system_uid" != "null" ] && labels+=",cluster_id=\"$kube_system_uid\"" name="cntr" name+="_$(get_lbl_val "$labels" namespace)" @@ -291,6 +299,7 @@ function k8s_get_kubepod_name() { if labels=$(grep "$pod_uid" -m 1 <<< "$containers" 2> /dev/null); then labels="${labels%%,container_*}" labels+=',kind="pod"' + labels+=",qos_class=\"$qos_class\"" [ -n "$kube_system_uid" ] && [ "$kube_system_uid" != "null" ] && labels+=",cluster_id=\"$kube_system_uid\"" name="pod" name+="_$(get_lbl_val "$labels" namespace)" |