Sampler field separator

We are trying to use Grafana to show plots that cover multiple performance tests we run using JMeter. We use the backend listener with GraphiteBackendListenerClient to store the stats in an influxdb.

The sampler names we used earlier were all flat names. In order to show plots across multiple tests, we would like to use hierarchical names for the samplers. For example, before, say we used “API1” as the sampler name, now we want to use “Day1Mix.HappyScenario.API1”. This should allow us to trim the name to “API1” in the legend of the plots in Grafana (using Alias By = $1, etc.) However, it seems the period seems to have a special meaning in the GraphiteBackendListenerClient. When I look at the measurement names in the influxdb the periods in the sampler name are replaced with an underscore. This makes grafana unable to separate out the fields in a sampler name.

The sampler name in the JTL (JMeter results file) file will be using the periods while the measurement names in the influxdb will have underscores.

Do you have any ideas on how to overcome this issue? Is it possible to either not convert the periods in the sampler name to underscores (this may or may not be in your control) or allow two character such as a “period OR semi-colon” to separate the fields out in the sampler name so that I can refer to the individual components of the sampler name using “Alias By $4”, etc. in the plot definition in the browser?

Thanks.

Don’t think there is a way around this problem.

One option that came up was to use the new InfluxDB Client after upgrading to the latest JMeter (v3.2). That client preserves the dots in the sampler name. However, they changed the name of the measurement. With Graphite Client, we used to get measurement names like rootPrefix.SamplerName.a.ok (like PE-1114.API1.a.ok). With InfluxDB Client, the measurement names are static (like PE-1114) and the sampler name goes into a tag whose key is “transaction”. The value of the tag would be the SamplerName (like Mix.Scenario.API1). Now, I don’t know know how to parse the transaction value to separate the fields out just API1 for the legend name in Grafana Panel.

It will be very beneficial if Grafana team can create an example dashboard that works with the data populated by the InfluxDB Client from JMeter.

Thanks for your time.

1 Like