Commit Graph

80 Commits

Author SHA1 Message Date
yo c807d95b21 BUGFIX: Allocate tmp once 2024-03-31 16:52:10 +02:00
yo ccc114bb13 Add output you can stream matches into, so we don't spwan a process at each match 2024-03-30 17:26:10 +01:00
yo 525d9cd270 BUGFIX partial match is no match 2024-03-30 08:50:44 +01:00
yo e9461bb39b Handle multi-pattern match on one line 2024-02-24 11:42:31 +01:00
Tom Hubrecht 8afa6281f4 Add support for ignore regexes in filters 2024-02-08 13:28:51 +00:00
ppom bfe0128764 Update wiki link to https://reaction.ppom.me 2024-01-17 12:00:00 +01:00
ppom 03862b33a6 Fix bug introduced by af2f092b. Fix #67 2024-01-10 12:00:00 +01:00
ppom fe7806c4d7 Fix version printing 2024-01-09 12:00:00 +01:00
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 e1ff702cd1 Generalisation of new SSH regex 2024-01-06 12:00:00 +01:00
ports 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
ports ec60a3d506 reaction show: remove empty patterns
fix #64
2024-01-04 12:00:00 +01:00
ports 8874454a0f Revert "quick fix IP regexes. see #62"
This reverts commit c2723d3829.
fix #62
2024-01-04 12:00:00 +01:00
ports c2723d3829 quick fix IP regexes. see #62 2024-01-04 12:00:00 +01:00
ports 9b766aa2b8 Do not panic when a regex doesn't compile
Show proper error message instead
fix #58
2024-01-04 12:00:00 +01:00
ports f662a485b9 reaction flush clarification 2024-01-03 12:00:00 +01:00
ports f6f26f283e add a version subcommand
fix #63
2023-12-31 12:00:00 +01:00
ports 7afe7e9b6f update IP regex
see https://framagit.org/ppom/reaction-wiki/-/issues/13
2023-12-20 12:00:00 +01:00
ports 3921292a9b Add link to the wiki in --help 2023-12-04 12:00:00 +01:00
ports 418af00152 comment suggestion for people that don't read the full file 2023-11-24 12:00:00 +01:00
ports 1bb24b443c Exit 0 when all is fine
Fix #45
2023-11-23 12:00:00 +01:00
ports 52dc67ed34 more ssh regexes 2023-11-05 12:00:00 +01:00
ports 6ee78f45f2 fix confs iptables 2023-11-05 12:00:00 +01:00
ports 2c73a8af03 update confs 2023-10-28 12:00:00 +02:00
ports 8c50f8412a new doc, new examples, support -help 2023-10-22 12:00:00 +02:00
ports b7eeb51e82 several fixes
- wait for start/stop commands to finish running
- better logs
2023-10-22 12:00:00 +02:00
ports ac2621911f reaction show: implement --pattern: pattern filtering with regex
fix #30
2023-10-22 12:00:00 +02:00
ports 4053a83629 reaction show: implement --limit: stream/filter filtering
fix #28
2023-10-21 12:00:00 +02:00
ports 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
ports b56ccffd3b Fix persistence bug 2023-10-20 12:00:00 +02:00
ports 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
ports 345dd94b17 Implement start/stop commands
fix #41
update README and configuration files accordingly
2023-10-18 12:00:00 +02:00
ports d35167b878 Remove stderr reading (caused bug) 2023-10-18 12:00:00 +02:00
ports 3822e854b6 Implement --loglevel option ; Use logger instead of log everywhere 2023-10-18 12:00:00 +02:00
ports 22ac3764e4 remove last "retry-period" occurences 2023-10-18 12:00:00 +02:00
ports a70f1ac424 logger package! yay
fix #38
2023-10-12 12:00:00 +02:00
ports 9d44c05a17 Configs refactor. New WIP config for activity watch like reaction server 2023-10-12 12:00:00 +02:00
ports 92e07f5fe6 ip46tables
wrote `ip46tables` C minimal program to handle both ipv4 and ipv6 at the same time.
fix #22
2023-10-05 12:00:00 +02:00
ports e56b851d15 support json, jsonnet, yaml formats
- jsonnet, json and yaml support for configuration
- json and yaml support for output formats

fix #40
fix #27
2023-10-05 12:00:00 +02:00
ports 3767fc6cf8 More complete reponse for flush 2023-10-04 12:00:00 +02:00
ports 32f6aca1b5 update help message to be accurate 2023-10-04 12:00:00 +02:00
ports 8343278bc3 explain how persistence works
fix #35
2023-10-01 12:00:00 +02:00
ports 480aeb7f15 Reimplement flushes
fix #33
fix #39
2023-10-01 12:00:00 +02:00
ports 83e760ed72 Rename global channels 2023-09-25 21:12:11 +02:00
ports 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
ports d26c7f24f2 better data structures for matches & actions maps 2023-09-24 17:08:21 +02:00
ports b6d7e5a946 server-client "show" reimplemented
Bug → expired matches are still present
2023-09-24 16:43:18 +02:00
ports a30a6644dc Fix: dont die if trying to delete unexistant DB
It can happen if reaction-flushes.db has never existed
but reaction-matches does, on first run-time database rotation
2023-09-24 16:00:54 +02:00
ports 87c00030fd Fix time comparison bug 2023-09-23 00:14:20 +02:00
ports be991e9665 Fix closed channel panic 2023-09-22 23:18:08 +02:00