]>
Since JMeter 2.13 you can get real-time results sent to a backend through the
Backend Listener using potentially any backend (JDBC, JMS, Webservice, …)
by providing a class which implements AbstractBackendListenerClient.
JMeter ships with a GraphiteBackendListenerClient which allows you to send metrics to a Graphite Backend.
This feature provides:
In this document we will present the configuration setup to graph and historize the data in 2 different backends:
Thread metrics are the following:
<rootMetricsPrefix>test.minAT
<rootMetricsPrefix>test.maxAT
<rootMetricsPrefix>test.meanAT
<rootMetricsPrefix>test.startedT
<rootMetricsPrefix>test.endedT
Response related metrics are the following:
<rootMetricsPrefix><samplerName>.ok.count
<rootMetricsPrefix><samplerName>.h.count
<rootMetricsPrefix><samplerName>.ok.min
<rootMetricsPrefix><samplerName>.ok.max
<rootMetricsPrefix><samplerName>.ok.avg
<rootMetricsPrefix><samplerName>.ok.pct<percentileValue>
<rootMetricsPrefix><samplerName>.ko.count
<rootMetricsPrefix><samplerName>.ko.min
<rootMetricsPrefix><samplerName>.ko.max
<rootMetricsPrefix><samplerName>.ko.avg
<rootMetricsPrefix><samplerName>.ko.pct<percentileValue>
<rootMetricsPrefix><samplerName>.a.count
<rootMetricsPrefix><samplerName>.a.min
<rootMetricsPrefix><samplerName>.a.max
<rootMetricsPrefix><samplerName>.a.avg
<rootMetricsPrefix><samplerName>.a.pct<percentileValue>
The default percentiles
setting on the
The Graphite naming hierarchy
uses dot (".") to separate elements. This could be confused with decimal percentile values.
JMeter converts any such values, replacing dot (".") with underscore ("-").
For example, "99.9
" becomes "99_9
"
By default JMeter sends metrics for all samplers accumulated under the samplerName "all
".
If the Backend Listener samplersList
is configured, then JMeter also sends the metrics
for the matching sample names unless summaryOnly=true
To make JMeter send metrics to backend add a BackendListener using the GraphiteBackendListenerClient.
InfluxDB is an open-source, distributed, time-series database that allows to
easily store metrics.
Installation and configuration is very easy, read this for more details InfluxDB documentation.
InfluxDB data can be easily viewed in a browser through either Influga or Grafana.
We will use Grafana in this case.
To enable Graphite listener in InfluxDB, edit files /opt/influxdb/shared/config.toml
or /usr/local/etc/influxdb.conf
,
find "[[graphite]]
" and set this:
Connect to InfluxDB using influx shell and create two databases:
influxdb.conf
or config.toml
Installing grafana is just a matter of putting the unzipped bundle behind an Apache HTTP server.
Read documentation for more details.
Open config.js
file and find datasources
element, and edit it like this:
grafanaDB:true
". Also note that here we use root
user for simplicity
It is better to dedicate a special user with restricted rights.
HELP WELCOME for this section, see Contributing documentation