aboutsummaryrefslogtreecommitdiff
path: root/rules_manager.go
diff options
context:
space:
mode:
authorEmiliano Ciavatta2020-10-12 19:33:40 +0000
committerEmiliano Ciavatta2020-10-12 19:33:40 +0000
commit09cb0a1518feb2221ccd8c10dced859c010e9991 (patch)
treed70efa91eb0c6911242e2d77c8f4fa5a834de138 /rules_manager.go
parenta44b70943ea4fce61261fc5fadf84a2a98fd2435 (diff)
Add rules statistics
Diffstat (limited to 'rules_manager.go')
-rw-r--r--rules_manager.go28
1 files changed, 18 insertions, 10 deletions
diff --git a/rules_manager.go b/rules_manager.go
index 636fc74..0e6c3d1 100644
--- a/rules_manager.go
+++ b/rules_manager.go
@@ -121,16 +121,24 @@ func LoadRulesManager(storage Storage, flagRegex string) (RulesManager, error) {
// if there are no rules in database (e.g. first run), set flagRegex as first rule
if len(rulesManager.rules) == 0 {
- if _, err := rulesManager.AddRule(context.Background(), Rule{
- Name: "flag",
- Color: "#E53935",
- Notes: "Mark connections where the flag is stolen",
- Patterns: []Pattern{
- {Regex: flagRegex, Direction: DirectionToClient},
- },
- }); err != nil {
- return nil, err
- }
+ go func() {
+ _, _ = rulesManager.AddRule(context.Background(), Rule{
+ Name: "flag_out",
+ Color: "#e53935",
+ Notes: "Mark connections where the flags are stolen",
+ Patterns: []Pattern{
+ {Regex: flagRegex, Direction: DirectionToClient, Flags: RegexFlags{Utf8Mode: true}},
+ },
+ })
+ _, _ = rulesManager.AddRule(context.Background(), Rule{
+ Name: "flag_in",
+ Color: "#43A047",
+ Notes: "Mark connections where the flags are placed",
+ Patterns: []Pattern{
+ {Regex: flagRegex, Direction: DirectionToServer, Flags: RegexFlags{Utf8Mode: true}},
+ },
+ })
+ }()
} else {
if err := rulesManager.generateDatabase(rules[len(rules)-1].ID); err != nil {
return nil, err