Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

iTechGuides is reader-supported. When you buy through links on our site, we may earn an affiliate commission. As an Amazon Associate I earn from qualifying purchases. Learn more

You can monitor a JMeter load test without opening the GUI in three ways: watch its command-line summary and save a results file, generate JMeter’s HTML dashboard after the run, or stream live metrics to a backend such as InfluxDB or Graphite for viewing in Grafana. Use the CLI summary for basic progress, the HTML dashboard for a shareable report, and a Backend Listener when you need live graphs or historical trends.

Choose the monitoring method that fits your test

Method When results are available What it provides Setup
CLI summary and JTL/CSV file Progress during the run; saved samples for later Lightweight progress signal and raw results file JMeter only
HTML dashboard After report generation completes APDEX, success and failure percentages, percentile statistics, and errors JMeter only
Backend Listener Live metrics, with retention for historical comparison Selected metrics and dashboard visualizations JMeter plus a metrics backend and dashboarding system

For load runs, use JMeter’s command-line interface (CLI), formerly called non-GUI mode. The Apache JMeter User Manual advises, “Don’t run load test using GUI mode !” The GUI remains useful for building and debugging test plans; it is not the recommended mode for running a load test.

1. Watch the CLI summary and save results

Start a test from a terminal and write its samples to a JTL file:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
jmeter -n -t plan.jmx -l results.jtl

JMeter prints a summary while the test runs, so you can check progress without opening the GUI. The -l option saves sample results to a JTL file, which can also be used for later analysis or report generation. JTL output can be CSV or XML; CSV is smaller and is generally preferable when a large sample volume would make XML files unwieldy. Configure file output rather than relying on GUI listeners to process sample data during a CLI run.

Choose this method when you want a low-overhead progress signal and a durable record of the run. The JMeter guide explains that CLI mode can generate a CSV or XML results file and an HTML report at the end of a load test.

2. Generate JMeter’s HTML dashboard

To create a report from an existing results file, run:

jmeter -g results.jtl -o report-dir

To run a test and generate the dashboard as part of that command, use:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
jmeter -n -t plan.jmx -l results.jtl -e -o report-dir

The destination directory specified with -o must be empty or absent. The generated dashboard includes APDEX, request success and failure percentages, a statistics table with configurable percentiles, and an error table. See the JMeter dashboard report guide for report details and configuration.

This is a practical choice for a shareable post-test report, not a live dashboard: its graphs become useful after results have been written and report generation has finished. JMeter describes the dashboard generator as “a modular extension of JMeter.”

3. Stream live metrics with a Backend Listener

Add a Backend Listener to the test plan and select InfluxdbBackendListenerClient or GraphiteBackendListenerClient. The listener sends metrics to the selected backend; InfluxDB data can then be viewed in Grafana. This approach supports live graphs, retained monitoring data, and comparison of multiple load tests. JMeter’s Backend Listener component reference describes the available metrics and configuration.

Depending on the configuration, the listener can report active-thread metrics, response counts, server hits per second, and response-time measures such as minimum and maximum values. Set samplersList to send only selected samplers when the full test plan does not need to appear in the dashboard, and choose percentiles deliberately so the reported response-time distribution matches what the team needs to assess.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Choose summarized or raw sample data

The InfluxdbBackendListenerClient sends summarized metrics. The component reference warns that InfluxDBRawBackendListenerClient writes every sample and uses more resources than the summarized client. Raw delivery may be appropriate when per-sample detail is necessary, but it can increase resource use in both JMeter and the database. For an operational overview or trends, limit the samplers and prefer summarized metrics when they provide enough detail.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Which option should you use?

  • For a quick progress check: run in CLI mode, watch the summary, and save a JTL/CSV file.
  • For a report to review or share after a run: generate the built-in HTML dashboard with -e -o, or create it from a saved file with -g -o.
  • For live monitoring or historical comparisons: configure a Backend Listener with InfluxDB or Graphite and use a dashboarding system such as Grafana.

A saved JTL/CSV file is useful even if you also stream metrics: it preserves results for later analysis and provides an input file for the built-in dashboard.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.