APM Agent 9.x with Logstash

Published on 2025-10-05

« See All Lectures Contact Us
APM Agent 9.x with Logstash

Introduction

We will set up Logstash as our Application Performance Monitoring (APM) Logging server. We have used Logstash before, so for a more indepth tutorial on Logstash, see here.

Download Code: Available on Github

Requirements

We use two different linux server:

Steps

Step 1 - Update Ubuntu

The Ubuntu installations are brand new. We update the distribution as well as install some tools we typically use on both machines.

apt-get update && apt dist-upgrade -y && apt-get install -y vim curl zip jq gnupg gpg gcc git

Step 2 - Install Logstash

The Ubuntu installations needs these dependencies, so run these commands on both:

wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo gpg --dearmor -o /usr/share/keyrings/elasticsearch-keyring.gpg echo "deb [signed-by=/usr/share/keyrings/elasticsearch-keyring.gpg] https://artifacts.elastic.co/packages/9.x/apt stable main" | sudo tee /etc/apt/sources.list.d/elastic-9.x.list apt-get update; apt-get install -y apt-transport-https; apt-get install -y logstash;

Step 3 - Start Logstash Service for APM Data

cat > /etc/logstash/conf.d/apm.conf <<'EOL'
input {
  elastic_agent {
    port => 5044
  }
}

output {
 file {
   path => '/var/log/logstash/apm.txt'
 }
}
EOL
systemctl enable logstash
systemctl start logstash

Step 4 - Install APM Agent

curl -L -O https://artifacts.elastic.co/downloads/apm-server/apm-server-9.1.4-linux-x86_64.tar.gz
tar xzvf apm-server-9.1.4-linux-x86_64.tar.gz
cat > ~/apm-server-9.1.4-linux-x86_64/apm-server.yml <<'EOL'
apm-server:
  host: '0.0.0.0:8200'
  auth:
    secret_token: 'abcd1234'
output.logstash:
  enabled: true
  hosts: ['ip.of.apm-logging.server:5044']
  ssl.enabled: false
logging.level: error
EOL
chown -R root:root ~/apm-server-9.1.4-linux-x86_64

For the apm-server.host, the 0.0.0.0 is very permissive. Consider using the actual ip address of the server or 127.0.0.1 if it is just localhost.

Step 5 - Start the APM Agent

You can start the APM agent with this comand:

cd ~/apm-server-9.1.4-linux-x86_64 ./apm-server

If you want to see the operational logs of the APM agent, you can add the -e flag like so:

cd ~/apm-server-9.1.4-linux-x86_64 ./apm-server -e

Step 6 - Install Application

See the Testing Applications of the Beginner's Guide to install and test APM.