PromQL vs. GCP alerting policyk: metadata_system_name vackolások
Elkezdtem ismerkedni a Prometheusszal GCP-n, de vannak furcsa dolgok…
Eredetileg ilyen PromQL queryket próbáltam meg alertben használni:
sum by (metadata_system_name) (
min_over_time(
sum without (cpu_state) (
{
"__name__"="agent.googleapis.com/cpu/utilization",
"monitored_resource"="gce_instance",
"cpu_state"!~"^(idle|iowait|steal)$"
}
)[1m:]
)
) > 80
A labelek között megjelent a metadata_system_name a helyes értékkel, Metrics Explorerben helyesen látszódott a bontás, de ahogy próbáltam a labelt a dokumentáció templateben használni, na az sehogy se működött. Mindenféle formátummal próbálkoztam:
${metric.label.metadata_system_name},${metadata_system_name}${metadata.system_label.KEY}
Nem egészen értem, hogy miért van ez, de úgy néz ki, hogy valamiért vagy elnyelődik a metadata, vagy eleve ki sincs vezetve. Érdekes módon viszont ha csinálok rajta egy label_replace-t így:
label_replace(
sum by (metadata_system_name) (
min_over_time(
sum without (cpu_state) (
{
"__name__"="agent.googleapis.com/cpu/utilization",
"monitored_resource"="gce_instance",
"cpu_state"!~"^(idle|iowait|steal)$"
}
)[1m:]
)
),
"custom_instance_name", "$1", "metadata_system_name", "(.*)"
)
…akkor minden további nélkül működik a label behelyettesítése a ${metric.label.custom_instance_name} formátummal.
Nem vágom.