diff --git a/pkg/types/appsec_event.go b/pkg/types/appsec_event.go index dc81c63b3..708b51c51 100644 --- a/pkg/types/appsec_event.go +++ b/pkg/types/appsec_event.go @@ -243,3 +243,25 @@ func (w MatchedRules) ByAccuracy(accuracy string) MatchedRules { log.Debugf("ByAccuracy(%s) -> %d", accuracy, len(ret)) return ret } + +func (w MatchedRules) ByName(name string) MatchedRules { + ret := MatchedRules{} + for _, rule := range w { + if rule["name"] == name { + ret = append(ret, rule) + } + } + log.Debugf("ByName(%s) -> %d", name, len(ret)) + return ret +} + +func (w MatchedRules) ByMsg(msg string) MatchedRules { + ret := MatchedRules{} + for _, rule := range w { + if rule["msg"] == msg { + ret = append(ret, rule) + } + } + log.Debugf("ByMsg(%s) -> %d", msg, len(ret)) + return ret +}