I had my metricbeat configured to elasticsearch, everything was working fine. I now need to include logstash, however, after changing the metricbeat output to logstash with my host, "http://<ip_address>:5044"(enabling the module and commenting out the elastic output), i get the following errors:
after using, ./metricbeat -e setup:
{"log.level":"error","@timestamp":"2024-03-15T13:26:25.118Z","log.origin":{"function":"github.com/elastic/beats/v7/libbeat/cmd/instance.handleError","file.name":"instance/beat.go","file.line":1315},"message":"Exiting: index management requested but the Elasticsearch output is not configured/enabled","service.name":"metricbeat","ecs.version":"1.6.0"}
Exiting: index management requested but the Elasticsearch output is not configured/enabled
after using ./metricbeat -e:
{"log.level":"error","@timestamp":"2024-03-15T13:26:30.022Z","log.origin":{"function":"github.com/elastic/beats/v7/libbeat/cmd/instance.handleError","file.name":"instance/beat.go","file.line":1315},"message":"Exiting: error connecting to Kibana: fail to get the Kibana version: fail to parse kibana version (): passed version is not semver: ","service.name":"metricbeat","ecs.version":"1.6.0"}
Exiting: error connecting to Kibana: fail to get the Kibana version: fail to parse kibana version (): passed version is not semver:
I have also tried looking into the logstash and metricbeat logs but they don't shed any new light on the problem. If i revert back to the elastic output it works fine. I am very confused why it is not giving any signs that it is connecting to logstash.
This is wrong, logstash beats input does not use http, remove the http and configure just the ip address and port.
This error means that you tried to setup metricbeat with metricbeat -e setup, but the elasticsearch output was disabled, to run metricbeat -e setup you need to configure your output to elasticsearch or it will not work.
If you didn't run setup before, you need to change your output to elasticsearch, run the setup, and change it back to logstash.
This error means that you metricbeat cannot get the kibana version for some reason, you have setup.dashboards.enabled and setup.kibana.hosts configured, so metricbeat will always try to connect to kibana.
You need to check if your metricbeat server can connect to kibana or remove those settings from your configuration file.
You just need to run setup once, when you configure a new module or when you upgrade the version, there is no need to keep running it.
To run metricbeat -e setup the output needs to be elasticsearch, it won't work if the output is logtash or kafka.
Have you added a new module or upgraded it? If no, then there is no need to run sertup again.
As mentioned, the setup parameter only works if the output is elasticsearch, but if you want to send data to logstash you need to remove the http from the output configuration because the logstash output does not use http.
Not sure if I got, but you run setup to configure the ingest pipelines in Elasticsearch, index templates etc, there is no need to run it multiple times.
Apache, Apache Lucene, Apache Hadoop, Hadoop, HDFS and the yellow elephant
logo are trademarks of the
Apache Software Foundation
in the United States and/or other countries.