From 927f54b9571e48ee32274e47aab1074ee177a251 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?No=C3=A9mi=20V=C3=A1nyi?= Date: Mon, 27 Jul 2020 13:25:29 +0200 Subject: [PATCH 1/2] Disable the option of running setup --machine-learning on its own --- filebeat/tests/system/test_ml.py | 2 +- libbeat/cmd/setup.go | 7 +++++++ libbeat/ml-importer/importer.go | 2 +- 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/filebeat/tests/system/test_ml.py b/filebeat/tests/system/test_ml.py index d5083e6eb3c2..e589d1e14364 100644 --- a/filebeat/tests/system/test_ml.py +++ b/filebeat/tests/system/test_ml.py @@ -106,7 +106,7 @@ def _run_ml_test(self, modules_flag): # Skipping dashboard loading to speed up tests cmd += ["-E", "setup.dashboards.enabled=false"] - cmd += ["setup", "--machine-learning"] + cmd += ["setup", "--machine-learning", "--dashboards"] if modules_flag: cmd += ["--modules=nginx"] diff --git a/libbeat/cmd/setup.go b/libbeat/cmd/setup.go index 23647e9445cd..aeb8e40ee1c1 100644 --- a/libbeat/cmd/setup.go +++ b/libbeat/cmd/setup.go @@ -114,6 +114,13 @@ func genSetupCmd(settings instance.Settings, beatCreator beat.Creator) *cobra.Co } } + // XXX this is a workaround for installing index template patterns + // before enabling ML for modules + if s.MachineLearning && !s.Dashboard { + fmt.Fprintf(os.Stderr, "--dashboards must be specified when choosing --machine-learning\n") + os.Exit(1) + } + if err = beat.Setup(settings, beatCreator, s); err != nil { os.Exit(1) } diff --git a/libbeat/ml-importer/importer.go b/libbeat/ml-importer/importer.go index 00358084263f..9d35382e9fda 100644 --- a/libbeat/ml-importer/importer.go +++ b/libbeat/ml-importer/importer.go @@ -209,7 +209,7 @@ func SetupModule(kibanaClient MLSetupper, module, prefix string) error { prefixPayload := fmt.Sprintf("{\"prefix\": \"%s\"}", prefix) status, response, err := kibanaClient.Request("POST", setupURL, nil, nil, strings.NewReader(prefixPayload)) if status != 200 { - return errors.Errorf("cannot set up ML with prefix: %s", prefix) + return errors.Errorf("cannot set up ML with prefix: %s, response: %s", prefix, string(response)) } if err != nil { return err From ddc688fe4b59b5a5a635ee27f75789f841874111 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?No=C3=A9mi=20V=C3=A1nyi?= Date: Mon, 27 Jul 2020 14:13:39 +0200 Subject: [PATCH 2/2] add changelog entry --- CHANGELOG.next.asciidoc | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.next.asciidoc b/CHANGELOG.next.asciidoc index 429bfca560e0..2bbadb867bcf 100644 --- a/CHANGELOG.next.asciidoc +++ b/CHANGELOG.next.asciidoc @@ -75,6 +75,7 @@ field. You can revert this change by configuring tags for the module and omittin - Adds Gsuite Drive support. {pull}19704[19704] - Adds Gsuite Groups support. {pull}19725[19725] - Move file metrics to dataset endpoint {pull}19977[19977] +- Disable the option of running --machine-learning on its own. {pull}20241[20241] *Heartbeat*