# Recording Rules fuer den Game-Host (management #0002). # # Materialisiert die Verknuepfung Container-UUID -> Klarname. cAdvisor kennt # Gameserver nur unter ihrer UUID, weil Wings die Container so benennt und kein # Namens-Label setzt. Relabeling kann das nicht aufloesen - es kann keine zweite # Metrik nachschlagen. Diese Regeln schreiben deshalb alle 30 s Serien fort, die # den Klarnamen bereits mitbringen, damit ihn nicht jedes Panel neu joinen muss. # # label_replace setzt zusaetzlich "display" auf den Klarnamen. Damit bedeutet # display in JEDER Quelle dasselbe - in Loki, in den cAdvisor-Serien und hier: # der Name, den Menschen lesen sollen. # # Uebernommen aus der Uebergabe des Game-Host-Betreibers vom 2026-08-20; dort # gegen Prometheus 3.0.0 mit `promtool check rules` geprueft. groups: - name: gameserver interval: 30s rules: - record: gameserver:cpu_cores expr: | label_replace( sum by (uuid) (rate(container_cpu_usage_seconds_total{uuid!=""}[2m])) * on (uuid) group_left(server_name, game) pterodactyl_server_info, "display", "$1", "server_name", "(.*)") - record: gameserver:memory_working_set_bytes expr: | label_replace( sum by (uuid) (container_memory_working_set_bytes{uuid!=""}) * on (uuid) group_left(server_name, game) pterodactyl_server_info, "display", "$1", "server_name", "(.*)") - record: gameserver:memory_limit_bytes expr: | label_replace( max by (uuid) (container_spec_memory_limit_bytes{uuid!=""} > 0) * on (uuid) group_left(server_name, game) pterodactyl_server_info, "display", "$1", "server_name", "(.*)") - record: gameserver:network_receive_bytes_per_second expr: | label_replace( sum by (uuid) (rate(container_network_receive_bytes_total{uuid!=""}[2m])) * on (uuid) group_left(server_name, game) pterodactyl_server_info, "display", "$1", "server_name", "(.*)") - record: gameserver:network_transmit_bytes_per_second expr: | label_replace( sum by (uuid) (rate(container_network_transmit_bytes_total{uuid!=""}[2m])) * on (uuid) group_left(server_name, game) pterodactyl_server_info, "display", "$1", "server_name", "(.*)")