github.com/grafana/pyroscope@v1.18.0/operations/monitoring/rules/k8s-rules-pod-owner.rules.yaml (about)

     1  groups:
     2  - name: k8s.rules.pod_owner
     3    rules:
     4      - expr: |
     5          max by (cluster, namespace, workload, pod) (
     6            label_replace(
     7              label_replace(
     8              kube_pod_owner{job=~"(.*/)?kube-state-metrics", owner_kind="ReplicaSet"},
     9                "replicaset", "$1", "owner_name", "(.*)"
    10              ) * on(replicaset, namespace) group_left(owner_name) topk by(replicaset, namespace) (
    11                1, max by (replicaset, namespace, owner_name) (
    12                  kube_replicaset_owner{job=~"(.*/)?kube-state-metrics"}
    13                )
    14              ),
    15              "workload", "$1", "owner_name", "(.*)"
    16            )
    17          )
    18        labels:
    19          workload_type: deployment
    20        record: namespace_workload_pod:kube_pod_owner:relabel
    21      - expr: |
    22          max by (cluster, namespace, workload, pod) (
    23            label_replace(
    24              kube_pod_owner{job=~"(.*/)?kube-state-metrics", owner_kind="DaemonSet"},
    25              "workload", "$1", "owner_name", "(.*)"
    26            )
    27          )
    28        labels:
    29          workload_type: daemonset
    30        record: namespace_workload_pod:kube_pod_owner:relabel
    31      - expr: |
    32          max by (cluster, namespace, workload, pod) (
    33            label_replace(
    34              kube_pod_owner{job=~"(.*/)?kube-state-metrics", owner_kind="StatefulSet"},
    35              "workload", "$1", "owner_name", "(.*)"
    36            )
    37          )
    38        labels:
    39          workload_type: statefulset
    40        record: namespace_workload_pod:kube_pod_owner:relabel
    41      - expr: |
    42          max by (cluster, namespace, workload, pod) (
    43            label_replace(
    44              kube_pod_owner{job=~"(.*/)?kube-state-metrics", owner_kind="Job"},
    45              "workload", "$1", "owner_name", "(.*)"
    46            )
    47          )
    48        labels:
    49          workload_type: job
    50        record: namespace_workload_pod:kube_pod_owner:relabel