Have an account? Sign in
Filebeat is a lightweight shipper that enables you to send your Apache Kafka message queue logs to Logstash and Elasticsearch. Configure Filebeat using the pre-defined examples below to start sending and analysing your Apache Kafka message queue logs.
First we need to install Filebeat. The Apache Kafka input being used is only available in version 7.4 Filebeat onwards.
sudo apt-get install apt-transport-https wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add - echo "deb https://artifacts.elastic.co/packages/oss-7.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-7.x.list sudo apt-get update && sudo apt-get install filebeat
sudo rpm --import https://packages.elastic.co/GPG-KEY-elasticsearch echo "[elastic-6.x] name=Elastic repository for 6.x packages baseurl=https://artifacts.elastic.co/packages/6.x/yum gpgcheck=1 gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch enabled=1 autorefresh=1 type=rpm-md" | sudo tee /etc/yum.repos.d/elastic-beats.repo sudo yum install filebeat sudo chkconfig --add filebeat
Download the filebeat Windows zip file from the official downloads page.
Extract the contents of the zip file into C:\Program Files.
Open a PowerShell prompt as an Administrator (right-click the PowerShell icon and select Run As Administrator). If you are running Windows XP, you may need to download and install PowerShell.
Run the following commands to install filebeat as a Windows service:
PS > cd 'C:\Program Files\filebeat' PS C:\Program Files\filebeat> .\install-service-filebeat.ps1 Security warning Run only scripts that you trust. While scripts from the internet can be useful, this script can potentially harm your computer. If you trust this script, use the Unblock-File cmdlet to allow the script to run without this warning message. Do you want to run C:\Program Files\Winlogbeat\install-service-filebeat.ps1? [D] Do not run [R] Run once [S] Suspend [?] Help (default is "D"): R Status Name DisplayName ------ ---- ----------- Stopped filebeat filebeat
PowerShell.exe -ExecutionPolicy UnRestricted -File .\install-service-filebeat.ps1.
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: ["your-logstash-host:your-ssl-port"] loadbalance: true ssl.enabled: true
We need to specify the Kafka input details. In the configuration file locate the filebeat.inputs section and edit your config to look similar to the below.
filebeat.inputs: - type: kafka hosts: - name-of-your-broker:your-broker-port # - localhost:9092 (Example) topics: ["name-of-your-topic", "name-of-another-topic"] group_id: "filebeat"
Let's check the configuration file is syntactically correct.
sudo filebeat -e -c /etc/filebeat/filebeat.yml
cd <EXTRACTED_ARCHIVE> filebeat.exe -e -c filebeat.yml
Ok, time to start ingesting data!
sudo systemctl enable filebeat sudo systemctl start filebeat
Apache Kafka is a distributed streaming platform written in Scala & Java, that is primarily used for generating low latency real-time data streaming pipelines for apps & data lake engines.
Kafka offers users the ability to publish & subscribe to record streams, decouple data & sort the aggregated data in chronological order for improved real-time processing. The platform is suited to processing many trillions of cross systems events per day making the tool ideal as a big data solution.
Kafka is one of the leading Apache projects and is used by enterprise level businesses globally; including Uber, LinkedIn, Netflix & Twitter. Much of this infrastructure also uses Logstash, which works side by side with the platform as Kafka acts as a buffer between the two for improved resilience.
The combined power of Elasticsearch, Logstash & Kibana form the Elastic Stack which can be used for efficient log analysis as platform & Kafka broker logs contain vital information on the performance & overall health of your systems.
Our hosted Elastic Stack solution can help monitor & visualise Kafka logs and alert you on performance issues & broker degradation in real time. Logit’s built in Kibana can easily generate dashboards for capturing various Kafka log messages along with their severity counts.
If you need any assistance with analysing your Kafka logs (no matter if their server, utils or state-change logs) we're here to help. Feel free to get in touch by contacting the Logit help team via chat & we'll be happy to help you start analysing your log data.