feat(cgroups.plugin): add k8s_qos_class label (#12737)
* add k8s_qos_class label * simplify
Ilya Mashchenko committed
Apr 22, 2022 at 10:58 UTC
58950a238b7c3362a8c9c27f47d22401d6529c28
1 file changed
+9
collectors/cgroups.plugin/cgroup-name.sh.in
+9
@@ -273,12 +273,20 @@ function k8s_get_kubepod_name() {
273
return 1
274
fi
275
276
+ local qos_class
277
+ if [[ $clean_id =~ .+(besteffort|burstable) ]]; then
278
+ qos_class="${BASH_REMATCH[1]}"
279
+ else
280
+ qos_class="guaranteed"
281
+ fi
282
+
283
# available labels:
284
# namespace, pod_name, pod_uid, container_name, container_id, node_name
285
local labels
286
if [ -n "$cntr_id" ]; then
287
if labels=$(grep "$cntr_id" <<< "$containers" 2> /dev/null); then
288
labels+=',kind="container"'
289
+ labels+=",qos_class=\"$qos_class\""
290
[ -n "$kube_system_uid" ] && [ "$kube_system_uid" != "null" ] && labels+=",cluster_id=\"$kube_system_uid\""
291
name="cntr"
292
name+="_$(get_lbl_val "$labels" namespace)"
@@ -291,6 +299,7 @@ function k8s_get_kubepod_name() {
299
if labels=$(grep "$pod_uid" -m 1 <<< "$containers" 2> /dev/null); then
300
labels="${labels%%,container_*}"
301
labels+=',kind="pod"'
302
+ labels+=",qos_class=\"$qos_class\""
303
[ -n "$kube_system_uid" ] && [ "$kube_system_uid" != "null" ] && labels+=",cluster_id=\"$kube_system_uid\""
304
name="pod"
305
name+="_$(get_lbl_val "$labels" namespace)"