JMeter + ElasticSearch Live Monitoring

Anthony Gauthier
4 min readApr 27, 2018

Today, I want to talk about performance testing. More specifically, I want to get into performance testing with JMeter, ElasticSearch, and Grafana. Let’s get right into it.

Almost a year ago, at work, I was asked to do some research into the ElasticStack. We needed a solution to enable live monitoring of JMeter tests in Non-GUI mode— After a few searches on Google, GitHub, and StackOverflow, I came across multiple solutions. The only thing is that they had missing functionalities. So I decided to create this plugin (initially based on this, but was reworked from the ground up and became its own entity). What the plugin does is it asynchronously sends JMeter’s sample results to an ElasticSearch engine — as simple as that.

This plugin is not meant to be “better” or “greater” than the InfluxDB + Grafana or Graphite + Grafana combo. It is simply an alternative solution.

This tutorial assumes you have an up and running instance of ElasticSearch and Grafana. The plugin supports any ElasticSearch version as it uses the low-level REST client.

Installation & Configuration

Installing the plugin is very easy since it’s available on the Plugins Manager. All you need to do is install the JMeter Plugins Manager and then install the plugin “ElasticSearch Backend Listener”. Now let’s add it to your test plan and configure it.

  1. Add a new backend listener to your test plan
  2. Change the…

--

--

Anthony Gauthier

Developer, Performance Engineer, Tech enthusiast. Find me on GitHub (delirius325).