Install and run

edit

This page is designed to make it easy to install and run the components of Elastic APM. Simply follow the step-by-step links below, and you’ll be up and running in no time. Let’s get started.

You can skip having to install Elasticsearch, Kibana, and APM Server by using our hosted Elasticsearch Service on Elastic Cloud. The Elasticsearch Service is available on both AWS and GCP, and automatically configures APM Server to work with Elasticsearch and Kibana. Additional APM user settings are also available.

Try out the Elasticsearch Service for free.

Before you begin

edit
  • See the Elastic Support Matrix for information about supported operating systems and product compatibility. We recommend you use the same version of Elasticsearch, Kibana, and APM Server.
  • Verify that your system meets the minimum JVM requirements for Elasticsearch.
  • The following links assume you’re using the current version of the Elastic Stack. If you’re not, it’s easy to adjust the version of the documentation after you land on each page.

Install and run Elasticsearch

edit

You’ll need to install an Elasticsearch cluster, and make sure it’s up and running:

Install and run Kibana

edit

Now we’ll install Kibana and open up the web interface:

Install and run APM Server

edit

You’ve made it to the fun part - Let’s get APM Server up and running:

Use the config file if you need to change the default configuration that APM Server uses to connect to Elasticsearch, or if you need to specify credentials:

If you do change the listen address from localhost to something that is accessible from outside of the machine, we recommend setting up firewall rules to ensure that only your own systems can access the API. Alternatively, you can use a secret token and TLS.

If you have APM Server running on the same host as your service, you can configure it to listen on a Unix domain socket.

For detailed instructions on how to install and secure APM Server in your server environment, including details on how to run APM Server in a highly available environment, please see the full APM Server documentation.

Install the Kibana dashboards

edit

Load APM dashboards directly in Kibana via the APM - Getting started page.

Install and configure APM agents

edit

Agents are written in the same language as your service. Currently Elastic APM has agents for Go, Java, Node.js, Python, Ruby, and JavaScript RUM.

Setting up a new service to be monitored requires installing the agent, and configuring it with the address of your APM Server and the service name.

Check the Agent/Server compatibility matrix to ensure you’re using agents that are compatible with your version of Elasticsearch.

Agent

More information

Go

The Go agent automatically instruments Gorilla and Gin, and has support for Go’s built-in net/http and database/sql drivers.

Introduction

Supported technologies

Config

Java

The Java agent automatically instruments Servlet API, Spring MVC, and Spring Boot out of the box.

Introduction

Supported technologies

Config

Node.js

The Node.js agent automatically instruments Express, hapi, Koa, and Restify out of the box.

Introduction

Supported technologies

Config

Python

The Python agent automatically instruments Django and Flask out of the box.

Getting Started

Config

Ruby

The Ruby agent automatically instruments Rails out of the box.

Introduction

Supported technologies

Config

RUM

Real User Monitoring (RUM) captures user interactions with clients such as web browsers.

Introduction

Config

Choose a service name

edit

The service name is used by Elastic APM to differentiate between data coming from different services.

Elastic APM includes the service name field on every document that it saves in Elasticsearch. If you change the service name after using Elastic APM, you will see the old service name and the new service name as two separate services. Make sure you choose a good service name before you get started.

The service name can only contain alphanumeric characters, spaces, underscores, and dashes (must match ^[a-zA-Z0-9 _-]+$).

Next steps

edit

You’re now up and running with Elastic APM! Don’t forget to check out the APM Concepts and Data Model documentation to gain a deeper understanding of how Elastic APM works.