You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
183 lines
9.8 KiB
183 lines
9.8 KiB
kind: ConfigMap
|
|
apiVersion: v1
|
|
metadata:
|
|
name: thanos-ruler-custom-rules
|
|
namespace: open-cluster-management-observability
|
|
data:
|
|
custom_rules.yaml: |
|
|
groups:
|
|
- name: opencodequest
|
|
rules:
|
|
- record: opencodequest_fights_total:dev
|
|
expr: clamp_max(sum(label_replace(fights_total{namespace=~"[a-zA-Z0-9]+-workshop-dev"}, "user", "$1", "namespace", "([a-zA-Z0-9]+)-workshop-dev")) by (user, cluster), 1) or clamp(sum(label_replace(kube_namespace_status_phase{namespace=~".*-workshop-(dev|preprod|prod)",phase="Active"}, "user", "$1", "namespace", "(.*)-workshop-(dev|preprod|prod)")) by (user, cluster), 0, 0)
|
|
- record: opencodequest_fights_total:preprod
|
|
expr: clamp_max(sum(label_replace(fights_total{namespace=~"[a-zA-Z0-9]+-workshop-preprod"}, "user", "$1", "namespace", "([a-zA-Z0-9]+)-workshop-preprod")) by (user, cluster), 1) or clamp(sum(label_replace(kube_namespace_status_phase{namespace=~".*-workshop-(dev|preprod|prod)",phase="Active"}, "user", "$1", "namespace", "(.*)-workshop-(dev|preprod|prod)")) by (user, cluster), 0, 0)
|
|
- record: opencodequest_fights_total:prod
|
|
expr: clamp_max(sum(label_replace(fights_total{namespace=~"[a-zA-Z0-9]+-workshop-prod"}, "user", "$1", "namespace", "([a-zA-Z0-9]+)-workshop-prod")) by (user, cluster), 1) or clamp(sum(label_replace(kube_namespace_status_phase{namespace=~".*-workshop-(dev|preprod|prod)",phase="Active"}, "user", "$1", "namespace", "(.*)-workshop-(dev|preprod|prod)")) by (user, cluster), 0, 0)
|
|
- record: opencodequest_leaderboard_hero:dev
|
|
expr: max((opencodequest_hero_quarkus_pod:dev + opencodequest_hero_db_pod:dev + opencodequest_hero_pipeline) == bool 3) by (user, cluster)
|
|
- record: opencodequest_leaderboard_villain:dev
|
|
expr: max((opencodequest_villain_quarkus_pod:dev + opencodequest_villain_db_pod:dev + opencodequest_villain_pipeline) == bool 3) by (user, cluster)
|
|
- record: opencodequest_leaderboard_fight:dev
|
|
expr: max((opencodequest_fight_quarkus_pod:dev + opencodequest_fight_pipeline) == bool 2) by (user, cluster)
|
|
- record: opencodequest_leaderboard_hero:preprod
|
|
expr: max((opencodequest_hero_quarkus_pod:preprod + opencodequest_hero_db_pod:preprod + opencodequest_hero_pipeline) == bool 3) by (user, cluster)
|
|
- record: opencodequest_leaderboard_villain:preprod
|
|
expr: max((opencodequest_villain_quarkus_pod:preprod + opencodequest_villain_db_pod:preprod + opencodequest_villain_pipeline) == bool 3) by (user, cluster)
|
|
- record: opencodequest_leaderboard_fight:preprod
|
|
expr: max((opencodequest_fight_quarkus_pod:preprod + opencodequest_fight_pipeline) == bool 2) by (user, cluster)
|
|
- record: opencodequest_leaderboard_hero:prod
|
|
expr: max((opencodequest_hero_quarkus_pod:prod + opencodequest_hero_db_pod:prod + opencodequest_hero_pipeline) == bool 3) by (user, cluster)
|
|
- record: opencodequest_leaderboard_villain:prod
|
|
expr: max((opencodequest_villain_quarkus_pod:prod + opencodequest_villain_db_pod:prod + opencodequest_villain_pipeline) == bool 3) by (user, cluster)
|
|
- record: opencodequest_leaderboard_fight:prod
|
|
expr: max((opencodequest_fight_quarkus_pod:prod + opencodequest_fight_pipeline) == bool 2) by (user, cluster)
|
|
|
|
- name: opencodequest_step1
|
|
rules:
|
|
- record: opencodequest_leaderboard_hero_onetime_bonus:dev
|
|
expr: |
|
|
(increase(opencodequest_leaderboard_hero:dev[2m]) >= bool 0.5)
|
|
*
|
|
(
|
|
55
|
|
+
|
|
(
|
|
(1728047700 + 55 * 60)
|
|
-
|
|
timestamp(sum(label_replace(kube_namespace_status_phase{namespace=~".*-workshop-(dev|preprod|prod)",phase="Active"}, "user", "$1", "namespace", "(.*)-workshop-(dev|preprod|prod)")) by (user, cluster))
|
|
) / (5 * 60)
|
|
)
|
|
- record: opencodequest_leaderboard_villain_onetime_bonus:dev
|
|
expr: |
|
|
(increase(opencodequest_leaderboard_villain:dev[2m]) >= bool 0.5)
|
|
*
|
|
(
|
|
25
|
|
+
|
|
(
|
|
(1728047700 + 85 * 60)
|
|
-
|
|
timestamp(sum(label_replace(kube_namespace_status_phase{namespace=~".*-workshop-(dev|preprod|prod)",phase="Active"}, "user", "$1", "namespace", "(.*)-workshop-(dev|preprod|prod)")) by (user, cluster))
|
|
) / (5 * 60)
|
|
)
|
|
- record: opencodequest_leaderboard_fight_onetime_bonus:dev
|
|
expr: |
|
|
(increase(opencodequest_leaderboard_fight:dev[2m]) >= bool 0.5)
|
|
*
|
|
(
|
|
29
|
|
+
|
|
(
|
|
(1728047700 + 130 * 60)
|
|
-
|
|
timestamp(sum(label_replace(kube_namespace_status_phase{namespace=~".*-workshop-(dev|preprod|prod)",phase="Active"}, "user", "$1", "namespace", "(.*)-workshop-(dev|preprod|prod)")) by (user, cluster))
|
|
) / (5 * 60)
|
|
)
|
|
- record: opencodequest_leaderboard_hero_onetime_bonus:preprod
|
|
expr: |
|
|
(increase(opencodequest_leaderboard_hero:preprod[2m]) >= bool 0.5)
|
|
*
|
|
(
|
|
55
|
|
+
|
|
(
|
|
(1728047700 + 55 * 60)
|
|
-
|
|
timestamp(sum(label_replace(kube_namespace_status_phase{namespace=~".*-workshop-(dev|preprod|prod)",phase="Active"}, "user", "$1", "namespace", "(.*)-workshop-(dev|preprod|prod)")) by (user, cluster))
|
|
) / (5 * 60)
|
|
)
|
|
- record: opencodequest_leaderboard_villain_onetime_bonus:preprod
|
|
expr: |
|
|
(increase(opencodequest_leaderboard_villain:preprod[2m]) >= bool 0.5)
|
|
*
|
|
(
|
|
25
|
|
+
|
|
(
|
|
(1728047700 + 85 * 60)
|
|
-
|
|
timestamp(sum(label_replace(kube_namespace_status_phase{namespace=~".*-workshop-(dev|preprod|prod)",phase="Active"}, "user", "$1", "namespace", "(.*)-workshop-(dev|preprod|prod)")) by (user, cluster))
|
|
) / (5 * 60)
|
|
)
|
|
- record: opencodequest_leaderboard_fight_onetime_bonus:preprod
|
|
expr: |
|
|
(increase(opencodequest_leaderboard_fight:preprod[2m]) >= bool 0.5)
|
|
*
|
|
(
|
|
29
|
|
+
|
|
(
|
|
(1728047700 + 130 * 60)
|
|
-
|
|
timestamp(sum(label_replace(kube_namespace_status_phase{namespace=~".*-workshop-(dev|preprod|prod)",phase="Active"}, "user", "$1", "namespace", "(.*)-workshop-(dev|preprod|prod)")) by (user, cluster))
|
|
) / (5 * 60)
|
|
)
|
|
- record: opencodequest_leaderboard_hero_onetime_bonus:prod
|
|
expr: |
|
|
(increase(opencodequest_leaderboard_hero:prod[2m]) >= bool 0.5)
|
|
*
|
|
(
|
|
55
|
|
+
|
|
(
|
|
(1728047700 + 55 * 60)
|
|
-
|
|
timestamp(sum(label_replace(kube_namespace_status_phase{namespace=~".*-workshop-(dev|preprod|prod)",phase="Active"}, "user", "$1", "namespace", "(.*)-workshop-(dev|preprod|prod)")) by (user, cluster))
|
|
) / (5 * 60)
|
|
)
|
|
- record: opencodequest_leaderboard_villain_onetime_bonus:prod
|
|
expr: |
|
|
(increase(opencodequest_leaderboard_villain:prod[2m]) >= bool 0.5)
|
|
*
|
|
(
|
|
25
|
|
+
|
|
(
|
|
(1728047700 + 85 * 60)
|
|
-
|
|
timestamp(sum(label_replace(kube_namespace_status_phase{namespace=~".*-workshop-(dev|preprod|prod)",phase="Active"}, "user", "$1", "namespace", "(.*)-workshop-(dev|preprod|prod)")) by (user, cluster))
|
|
) / (5 * 60)
|
|
)
|
|
- record: opencodequest_leaderboard_fight_onetime_bonus:prod
|
|
expr: |
|
|
(increase(opencodequest_leaderboard_fight:prod[2m]) >= bool 0.5)
|
|
*
|
|
(
|
|
29
|
|
+
|
|
(
|
|
(1728047700 + 130 * 60)
|
|
-
|
|
timestamp(sum(label_replace(kube_namespace_status_phase{namespace=~".*-workshop-(dev|preprod|prod)",phase="Active"}, "user", "$1", "namespace", "(.*)-workshop-(dev|preprod|prod)")) by (user, cluster))
|
|
) / (5 * 60)
|
|
)
|
|
- name: opencodequest_step2
|
|
rules:
|
|
- record: opencodequest_leaderboard_hero_lifetime_bonus:dev
|
|
expr: |
|
|
sum_over_time(opencodequest_leaderboard_hero_onetime_bonus:dev[1d])
|
|
- record: opencodequest_leaderboard_villain_lifetime_bonus:dev
|
|
expr: |
|
|
sum_over_time(opencodequest_leaderboard_villain_onetime_bonus:dev[1d])
|
|
- record: opencodequest_leaderboard_fight_lifetime_bonus:dev
|
|
expr: |
|
|
sum_over_time(opencodequest_leaderboard_fight_onetime_bonus:dev[1d])
|
|
- record: opencodequest_leaderboard_hero_lifetime_bonus:preprod
|
|
expr: |
|
|
sum_over_time(opencodequest_leaderboard_hero_onetime_bonus:preprod[1d])
|
|
- record: opencodequest_leaderboard_villain_lifetime_bonus:preprod
|
|
expr: |
|
|
sum_over_time(opencodequest_leaderboard_villain_onetime_bonus:preprod[1d])
|
|
- record: opencodequest_leaderboard_fight_lifetime_bonus:preprod
|
|
expr: |
|
|
sum_over_time(opencodequest_leaderboard_fight_onetime_bonus:preprod[1d])
|
|
- record: opencodequest_leaderboard_hero_lifetime_bonus:prod
|
|
expr: |
|
|
sum_over_time(opencodequest_leaderboard_hero_onetime_bonus:prod[1d])
|
|
- record: opencodequest_leaderboard_villain_lifetime_bonus:prod
|
|
expr: |
|
|
sum_over_time(opencodequest_leaderboard_villain_onetime_bonus:prod[1d])
|
|
- record: opencodequest_leaderboard_fight_lifetime_bonus:prod
|
|
expr: |
|
|
sum_over_time(opencodequest_leaderboard_fight_onetime_bonus:prod[1d])
|
|
|