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.
Before you beginedit
- 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 Elasticsearchedit
You’ll need to install an Elasticsearch cluster, and make sure it’s up and running:
Install and run Kibanaedit
Now we’ll install Kibana and open up the web interface:
Install and run APM Serveredit
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.
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 and configure APM agentsedit
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.
The Go agent automatically instruments Gorilla and Gin, and has support for Go’s built-in net/http and database/sql drivers.
The Java agent automatically instruments Servlet API, Spring MVC, and Spring Boot out of the box.
The Node.js agent automatically instruments Express, hapi, Koa, and Restify out of the box.
The Python agent automatically instruments Django and Flask out of the box.
The Ruby agent automatically instruments Rails out of the box.
Real User Monitoring (RUM) captures user interactions with clients such as web browsers.
Choose a service nameedit
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