Configuring Heartbeat to Use Logstash

edit

Configuring Heartbeat to Use Logstash

edit

Prerequisite: To use Logstash as an output, you must also set up Logstash to receive events from Beats.

If you want to use Logstash to perform additional processing on the data collected by Heartbeat, you need to configure Heartbeat to use Logstash.

To do this, you edit the Heartbeat configuration file to disable the Elasticsearch output by commenting it out and enable the Logstash output by uncommenting the logstash section:

#----------------------------- Logstash output --------------------------------
output.logstash:
  hosts: ["127.0.0.1:5044"]

The hosts option specifies the Logstash server and the port (5044) where Logstash is configured to listen for incoming Beats connections.

For this configuration, you must load the index template into Elasticsearch manually because the options for auto loading the template are only available for the Elasticsearch output.

To test your configuration file, change to the directory where the Heartbeat binary is installed, and run Heartbeat in the foreground with the following options specified: ./heartbeat -configtest -e. Make sure your config files are in the path expected by Heartbeat (see Directory Layout). If you installed from DEB or RPM packages, run ./heartbeat.sh -configtest -e.