in configs/config.go [73:105]
func (filter *FilterConfig) Filter(ctx context.Context, event *v1.Event) bool {
if filter.Reason != "" && !filter.reasonRegExp.MatchString(event.Reason) {
return true
}
if filter.Message != "" && !filter.messageRegExp.MatchString(event.Message) {
return true
}
if event.Count < filter.MinCount {
return true
}
if filter.Type != "" && !filter.typeRegExp.MatchString(event.Type) {
return true
}
if filter.Action != "" && !filter.actionRegExp.MatchString(event.Action) {
return true
}
if filter.Kind != "" && !filter.kindRegExp.MatchString(event.InvolvedObject.Kind) {
return true
}
if filter.Namespace != "" && !filter.namespaceRegExp.MatchString(event.InvolvedObject.Namespace) {
return true
}
if filter.Name != "" && !filter.nameRegExp.MatchString(event.InvolvedObject.Name) {
return true
}
if filter.Service != "" {
c := <-k8s.Registry.GetContext(ctx, event)
if svcName := strings.TrimSpace(c.Service.Name); !filter.serviceRegExp.MatchString(svcName) {
return true
}
}
return false
}