add rule_type label to indicate rule type (#5834)
add rule_type label to indicate rule type (#472) Signed-off-by: junot <junotxiang@kubesphere.io>
This commit is contained in:
@@ -42,9 +42,13 @@ const (
|
||||
RuleLevelCluster RuleLevel = "cluster"
|
||||
RuleLevelGlobal RuleLevel = "global"
|
||||
|
||||
RuleTypeTemplate RuleType = "template" // for template rule configured by exprBuilder to build expression
|
||||
RuleTypeCustom RuleType = "custom" // for custom rule configured by direct expression
|
||||
|
||||
// for rule.labels
|
||||
RuleLabelKeyRuleLevel = "rule_level"
|
||||
RuleLabelKeyRuleGroup = "rule_group"
|
||||
RuleLabelKeyRuleType = "rule_type"
|
||||
RuleLabelKeyCluster = "cluster"
|
||||
RuleLabelKeyNamespace = "namespace"
|
||||
RuleLabelKeySeverity = "severity"
|
||||
@@ -75,6 +79,8 @@ const (
|
||||
|
||||
type RuleLevel string
|
||||
|
||||
type RuleType string
|
||||
|
||||
var maxConfigMapDataSize = int(float64(corev1.MaxSecretSize) * 0.5)
|
||||
|
||||
type enforceRuleFunc func(rule *promresourcesv1.Rule) error
|
||||
@@ -193,6 +199,11 @@ func makePrometheusRuleGroups(log logr.Logger, groupList client.ObjectList,
|
||||
continue
|
||||
}
|
||||
if prule != nil {
|
||||
if rule.ExprBuilder != nil && rule.ExprBuilder.Workload != nil {
|
||||
prule.Labels[RuleLabelKeyRuleType] = string(RuleTypeTemplate)
|
||||
} else {
|
||||
prule.Labels[RuleLabelKeyRuleType] = string(RuleTypeCustom)
|
||||
}
|
||||
prules = append(prules, *prule)
|
||||
}
|
||||
}
|
||||
@@ -216,6 +227,11 @@ func makePrometheusRuleGroups(log logr.Logger, groupList client.ObjectList,
|
||||
continue
|
||||
}
|
||||
if prule != nil {
|
||||
if rule.ExprBuilder != nil && rule.ExprBuilder.Node != nil {
|
||||
prule.Labels[RuleLabelKeyRuleType] = string(RuleTypeTemplate)
|
||||
} else {
|
||||
prule.Labels[RuleLabelKeyRuleType] = string(RuleTypeCustom)
|
||||
}
|
||||
prules = append(prules, *prule)
|
||||
}
|
||||
}
|
||||
@@ -241,6 +257,11 @@ func makePrometheusRuleGroups(log logr.Logger, groupList client.ObjectList,
|
||||
continue
|
||||
}
|
||||
if prule != nil {
|
||||
if rule.ExprBuilder != nil && (rule.ExprBuilder.Node != nil || rule.ExprBuilder.Workload != nil) {
|
||||
prule.Labels[RuleLabelKeyRuleType] = string(RuleTypeTemplate)
|
||||
} else {
|
||||
prule.Labels[RuleLabelKeyRuleType] = string(RuleTypeCustom)
|
||||
}
|
||||
prules = append(prules, *prule)
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user