APM for Elasticsearch

Can one setup APM to monitor elasticsearch 6.6+?

If yes, how does one specify/configure the apm agent when using elasticsearch docker-compose.yml file to start elasticsearch cluster?

If APM is not yet supported for elasticsearch, when is APM support coming out for elasticsearch?

Thanks!

Which APM agent would you like to use? Not all agents support the same libraries and frameworks.

Thanks Silvia. I have a 2-node elasticsearch 6.6 cluster running as docker containers (on Docker for Windows). My goal is to monitor this elasticsearch cluster using APM.

Hence i am looking for the following:

  1. Is APM capable of monitoring elasticsearch cluster?
  2. If yes - how does one setup APM to monitor a 2-node elasticsearch cluster (which has been setup using Docker on "Docker for Windows"?

I am assuming one has to leverage the APM JAVA Agent to accomplish this.

Why don't you use the free Monitoring functionality that is included in a Basic license?

1 Like

Thanks Mark. Yes, I am using the free monitoring too. However I use it for high level monitoring - wherein it reports graphs, trends, metrics etc. However it seems one cannot get the individual query level info using the OOTB Monitoring UI. For e.g. If one is interested to review the list of all queries and their response times and then dig deeper into the slow performing queries...i don't think there is a provision to get such kind of info using the OOTB monitoring UI. Let me know if i have overlooked anything.

The Java agent is capable of instrumenting the Elasticsearch REST client. It creates spans for outgoing calls to ES and also contains the query. That way, you can build your own dashboards to get insights into the slowest queries. Is that what you are looking for?

Yes Felix. However in my case i start the elasticsearch cluster using Docker. Could not find any info, on how to configure APM to get these kind of insights from my elasticsearch cluster, especially when using Docker/container based deployment.

You cannot integrate APM into the existing Elasticsearch container in this manner.

If you want to catch the queries, look at using Packetbeat to listen to 9200.

Thanks for the inputs Mark. I will check out Packetbeat.

This topic was automatically closed 20 days after the last reply. New replies are no longer allowed.