diff --git a/doc/img/crowdwatch-global.png b/doc/img/crowdwatch-global.png deleted file mode 100644 index a8a773e5e..000000000 Binary files a/doc/img/crowdwatch-global.png and /dev/null differ diff --git a/pkg/config/crowdwatch/config.go b/pkg/config/crowdwatch/config.go deleted file mode 100644 index 2b1c6c4a1..000000000 --- a/pkg/config/crowdwatch/config.go +++ /dev/null @@ -1,155 +0,0 @@ -package config - -import ( - "flag" - "fmt" - "io/ioutil" - "path/filepath" - - "os" - - "github.com/crowdsecurity/crowdsec/pkg/cwversion" - "github.com/crowdsecurity/crowdsec/pkg/outputs" - - log "github.com/sirupsen/logrus" - "gopkg.in/yaml.v2" -) - -// Crowdwatch is the structure of the crowdsec configuration -type Crowdwatch struct { - WorkingFolder string `yaml:"working_dir,omitempty"` - DataFolder string `yaml:"data_dir,omitempty"` - ConfigFolder string `yaml:"config_dir,omitempty"` - AcquisitionFile string `yaml:"acquis_path,omitempty"` - SingleFile string //for forensic mode - SingleFileLabel string //for forensic mode - PIDFolder string `yaml:"pid_dir,omitempty"` - LogFolder string `yaml:"log_dir,omitempty"` - LogMode string `yaml:"log_mode,omitempty"` //like file, syslog or stdout ? - LogLevel log.Level `yaml:"log_level,omitempty"` //trace,debug,info,warning,error - Daemonize bool `yaml:"daemon,omitempty"` //true -> go background - Profiling bool `yaml:"profiling,omitempty"` //true -> enable runtime profiling - SQLiteFile string `yaml:"sqlite_path,omitempty"` //path to sqlite output - APIMode bool `yaml:"apimode,omitempty"` //true -> enable api push - Linter bool - Prometheus bool - HTTPListen string `yaml:"http_listen,omitempty"` - ValidatorMode string /*if present points to a specific config (for tests)*/ - RestoreMode string - DumpBuckets bool - OutputConfig *outputs.OutputFactory `yaml:"plugin"` -} - -// NewCrowdwatchConfig create a new crowdsec configuration with default configuration -func NewCrowdwatchConfig() *Crowdwatch { - return &Crowdwatch{ - LogLevel: log.InfoLevel, - Daemonize: false, - Profiling: false, - WorkingFolder: "./", - DataFolder: "./data/", - ConfigFolder: "./config/", - PIDFolder: "./", - LogFolder: "./", - LogMode: "stdout", - SQLiteFile: "./test.db", - APIMode: false, - Prometheus: false, - HTTPListen: "127.0.0.1:6060", - } -} - -// GetOPT return flags parsed from command line -func (c *Crowdwatch) GetOPT() error { - - AcquisitionFile := flag.String("acquis", "", "path to acquis.yaml") - configFile := flag.String("c", "", "configuration file") - printTrace := flag.Bool("trace", false, "VERY verbose") - printDebug := flag.Bool("debug", false, "print debug-level on stdout") - printInfo := flag.Bool("info", false, "print info-level on stdout") - printVersion := flag.Bool("version", false, "display version") - APIMode := flag.Bool("api", false, "perform pushes to api") - SQLiteMode := flag.Bool("sqlite", true, "write overflows to sqlite") - profileMode := flag.Bool("profile", false, "Enable performance profiling") - catFile := flag.String("file", "", "Process a single file in time-machine") - catFileType := flag.String("type", "", "Labels.type for file in time-machine") - daemonMode := flag.Bool("daemon", false, "Daemonize, go background, drop PID file, log to file") - testMode := flag.Bool("t", false, "only test configs") - prometheus := flag.Bool("prometheus-metrics", false, "expose http prometheus collector (see http_listen)") - validatorMode := flag.String("custom-config", "", "[dev] run a specific subset of configs parser:file.yaml,scenarios:file.yaml") - restoreMode := flag.String("restore-state", "", "[dev] restore buckets state from json file") - dumpMode := flag.Bool("dump-state", false, "[dev] Dump bucket state at the end of run.") - - flag.Parse() - - if *printVersion == true { - cwversion.Show() - os.Exit(0) - } - - if *catFile != "" { - if *catFileType == "" { - log.Fatalf("-file requires -type") - } - c.SingleFile = *catFile - c.SingleFileLabel = *catFileType - } - - /*overriden by cfg file*/ - if *configFile != "" { - rcfg, err := ioutil.ReadFile(*configFile) - if err != nil { - return fmt.Errorf("read '%s' : %s", *configFile, err) - } - if err := yaml.UnmarshalStrict(rcfg, c); err != nil { - return fmt.Errorf("parse '%s' : %s", *configFile, err) - } - if c.AcquisitionFile == "" { - c.AcquisitionFile = filepath.Clean(c.ConfigFolder + "/acquis.yaml") - } - } - - if *AcquisitionFile != "" { - c.AcquisitionFile = *AcquisitionFile - } - if *dumpMode == true { - c.DumpBuckets = true - } - if *prometheus { - c.Prometheus = true - } - if *testMode { - c.Linter = true - } - if *validatorMode != "" { - c.ValidatorMode = *validatorMode - } - /*overriden by cmdline*/ - if *daemonMode { - c.Daemonize = true - } - if *profileMode { - c.Profiling = true - } - if *printDebug { - c.LogLevel = log.DebugLevel - } - if *printInfo { - c.LogLevel = log.InfoLevel - } - if *printTrace { - c.LogLevel = log.TraceLevel - } - if !*SQLiteMode { - c.SQLiteFile = "" - } - if *APIMode { - c.APIMode = true - } - - if *restoreMode != "" { - c.RestoreMode = *restoreMode - } - - return nil -}