mirror of
https://github.com/mariocandela/beelzebub.git
synced 2025-07-01 18:47:26 -04:00
Feature: Enhance Performance, Logging & Stability: Precompile Regex, Command Matching, Golang 1.24, History Cleanup & memLimitMiB Flag. (#182)
* Feat: Add support for logging which "command" was matched for SSH and HTTP strategies. * Feat: Convert to precompiling regexp at config load time. This allows for errors to be presented to the user during startup, and provides better performance for complex regexp. * Feat:Bump Golang version to latest stable 1.24 * Feat: Add a cleanup routine for HistoryStore, default TTL for events is 1 hour since last interaction. * Feat: Add new command line flag "memLimitMiB" with a default value of 100. --------- Signed-off-by: Bryan Nolen <bryan@arc.net.au> Signed-off-by: Mario Candela <mario.candela.personal@gmail.com> Co-authored-by: Mario Candela <mario.candela.personal@gmail.com>
This commit is contained in:
10
main.go
10
main.go
@ -2,6 +2,8 @@ package main
|
||||
|
||||
import (
|
||||
"flag"
|
||||
"runtime/debug"
|
||||
|
||||
"github.com/mariocandela/beelzebub/v3/builder"
|
||||
"github.com/mariocandela/beelzebub/v3/parser"
|
||||
|
||||
@ -13,12 +15,20 @@ func main() {
|
||||
quit = make(chan struct{})
|
||||
configurationsCorePath string
|
||||
configurationsServicesDirectory string
|
||||
memLimitMiB int
|
||||
)
|
||||
|
||||
flag.StringVar(&configurationsCorePath, "confCore", "./configurations/beelzebub.yaml", "Provide the path of configurations core")
|
||||
flag.StringVar(&configurationsServicesDirectory, "confServices", "./configurations/services/", "Directory config services")
|
||||
flag.IntVar(&memLimitMiB, "memLimitMiB", 100, "Process Memory in MiB (default 100, set to -1 to use system default)")
|
||||
flag.Parse()
|
||||
|
||||
if memLimitMiB > 0 {
|
||||
// SetMemoryLimit takes an int64 value for the number of bytes.
|
||||
// bytes value = MiB value * 1024 * 1024
|
||||
debug.SetMemoryLimit(int64(memLimitMiB * 1024 * 1024))
|
||||
}
|
||||
|
||||
parser := parser.Init(configurationsCorePath, configurationsServicesDirectory)
|
||||
|
||||
coreConfigurations, err := parser.ReadConfigurationsCore()
|
||||
|
Reference in New Issue
Block a user