Journalbeat Configuration
A lightweight shipping agent designed for systemd journals
Follow the steps below to send your observability data to Logit.io
Logs
Journalbeat is a lightweight, open source shipping agent that lets you ship log data from systemd journals stored on Linux operating systems to one or more destinations, including Logstash.
Please note that this beat is currently in an experimental phase and may be changed or removed in the future. This guide uses version 7.9.3 of Journalbeat and has been tested using Ubuntu.
Install Integration
Install Journalbeat
Journalbeat is intended for Linux operating systems. Therefore, no versions of journalbeat exists for Windows or MacOS.
The following curl commands will get version 7.9.3 of journalbeat but you can get the latest version using more specialised package managers specific to the OS being used, or by downloading the package manually.
curl -L -O https://artifacts.elastic.co/downloads/beats/journalbeat/journalbeat-7.9.3-amd64.deb
sudo dpkg -i journalbeat-7.9.3-amd64.deb
Configure Journalbeat
Locate and open the journalbeat configuration file:
/etc/journalbeat/journalbeat.yml
The following example will send all local journal log data to Logstash. By specifying an empty array as the paths value, the default /var/log/
path value will be used to point to the directory containing all locally persisted journals. This is a sensible default but you can specify
other paths to files or directories for journalbeat to crawl if required.
journalbeat.inputs:
# Paths that should be crawled and fetched (can be files or directories).
# When setting a directory, all journals under it are merged.
# When empty starts to read from local journal.
paths: []
A full example configuration file called journalbeat.reference.yml shows all possible configuration options.
Configure Output
We'll be shipping to Logstash so that we have the option to run filters before the data is indexed.
Comment out the elasticsearch output block.
## Comment out elasticsearch output
#output.elasticsearch:
# hosts: ["localhost:9200"]
Uncomment and change the logstash output to match below:
output.logstash:
hosts: ["@logstash.host:@logstash.sslPort"]
loadbalance: true
ssl.enabled: true
Validate Configuration
sudo journalbeat -e -c /etc/journalbeat/journalbeat.yml
Start Journalbeat
Ok, time to start ingesting data!
sudo systemctl enable journalbeat
sudo systemctl start journalbeat
Check Logit.io for your logs
Data should now have been sent to your Stack.
View My DataIf you don't see take a look at How to diagnose no data in Stack below for how to diagnose common issues.
How to diagnose no data in Stack
If you don't see data appearing in your stack after following this integration, take a look at the troubleshooting guide for steps to diagnose and resolve the problem or contact our support team and we'll be happy to assist.
Journalbeat Overview
Journalbeat is a recent addition to Elastic's Beats family that collects log entries from Systemd Journals. Journalbeat is based on the libbeat framework. Journalbeat is forecast to be repurposed from being a Beat and will instead become a module for Filebeat in the near future.
Journalbeat monitors the journal locations that are specified and also collects logs for forwarding with Logstash and further processing in Elasticsearch. It is rated as being easier to use than more commonly known Beats (such as Filebeat), but is noted as an experimental Beat by Elastic so is subject to change.
Journalbeat can be used to ship logs from Kubernetes but some users may not see their data being reflected in Elasticsearch and may prefer to use Filebeat or Fluentd for a seamless and wider community supported logging experience.
If you require any more assistance in using Journalbeat or any other Elastic Beats for shipping your log events we're here to help. Feel free to reach out by contacting our support team by visiting our dedicated Help Centre or via live chat & we'll be happy to assist.