Commit Graph

24 Commits

Author SHA1 Message Date
ppom
af2f092b71 Fix crash when all the regexes of a filter have no pattern in them
Fix #66
Example configuration causing crash:
```yaml
streams:
  mongod_restart:
    cmd: [ 'sh', '-c', 'while true; do echo "Started MongoDB Database Server."; sleep 5; done' ]
    filters:
      mongo_restart:
        regex:
          - 'Started MongoDB Database Server.'
        actions:
          restart_chat_tel:
            cmd: [ 'systemctl', 'restart', 'nginx' ]
```
2024-01-09 12:00:00 +01:00
ppom
b441e91f84 Add global concurrency parameter. fix #56
Fix bug which caused pending actions to be run multiple times when pending time finished
Fix bug which caused
1. past pending actions to rerun on exit
2. maximum one pending action per pattern/action couple to run on exit
2024-01-05 12:00:00 +01:00
ppom
1bb24b443c Exit 0 when all is fine
Fix #45
2023-11-23 12:00:00 +01:00
ppom
b7eeb51e82 several fixes
- wait for start/stop commands to finish running
- better logs
2023-10-22 12:00:00 +02:00
ppom
d5d73f3e6f Reduce database size
...and it's still not a breaking change!
fix #42

Benchmark: using config/heavy-load.yml
From 8.1MB to 4.8MB → 40% of size reduction!

75% of size reduction if we cumulate both optimizations, waow!
2023-10-21 12:00:00 +02:00
ppom
ed3cd4384c Reduce database size
...and it's not a breaking change!
fix #36

Benchmark: using config/heavy-load.yml
From 14MB to 8MB → 40% of size reduction!
2023-10-20 12:00:00 +02:00
ppom
345dd94b17 Implement start/stop commands
fix #41
update README and configuration files accordingly
2023-10-18 12:00:00 +02:00
ppom
d35167b878 Remove stderr reading (caused bug) 2023-10-18 12:00:00 +02:00
ppom
a70f1ac424 logger package! yay
fix #38
2023-10-12 12:00:00 +02:00
ppom
3767fc6cf8 More complete reponse for flush 2023-10-04 12:00:00 +02:00
ppom
480aeb7f15 Reimplement flushes
fix #33
fix #39
2023-10-01 12:00:00 +02:00
ppom
83e760ed72 Rename global channels 2023-09-25 21:12:11 +02:00
ppom
f29b5ec87f Fix bug "expired matches are still present" for "show"
Now matches are deleted at the exact time they expire, not when
accepting a new similar match
2023-09-24 17:28:37 +02:00
ppom
d26c7f24f2 better data structures for matches & actions maps 2023-09-24 17:08:21 +02:00
ppom
b6d7e5a946 server-client "show" reimplemented
Bug → expired matches are still present
2023-09-24 16:43:18 +02:00
ppom
87c00030fd Fix time comparison bug 2023-09-23 00:14:20 +02:00
ppom
a119e0814b one goroutine handles all actions
pending actions are now data, they're not goroutines anymore ❤️

warn: cli currently doesn't work, but it's already a huge commit
2023-09-22 18:12:11 +02:00
ppom
52556f69b9 one goroutine handles all matches
it's not the filters that handles their matches anymore
2023-09-09 23:38:53 +02:00
ppom
da9ed42363 DatabaseManager takes a *Conf 2023-09-09 20:42:47 +02:00
ppom
2243dda49a filters don't have their own goroutine anymore 2023-09-09 20:36:41 +02:00
ppom
fde291c1ff remove code by using more adapted stdlib function 2023-09-09 19:46:04 +02:00
ppom
1cb0562e15 persist flushes accross restarts. fixes #23 2023-09-09 19:32:23 +02:00
ppom
48f2517074 database refactor
fixes #21
2023-09-06 02:00:33 +02:00
ppom
799ba88823 New unified CLI design
fixes #25
thanks @bertille-ddp for comments && suggestions!
2023-09-03 12:13:18 +02:00