JMeterPluginsCMD Command Line Tool


There is small command-line utility for generating graphs out of JTL files. It behave just like right-click context menu on all graphs. The tool can generate PNG, CSV or both.

Note you can use GraphsGeneratorListener if you want to bulk generate graphs after a test or for existing results.


The tool is installed normally with PluginsManager, producing launcher bat/sh files in JMeter's bin directory. Use JMeterPluginsCMD.bat on Windows and on MacOS and Linux.

Usage and Parameters

Generating PNG:

JMeterPluginsCMD.bat --generate-png test.png --input-jtl results.jtl --plugin-type ResponseTimesOverTime --width 800 --height 600

Generating CSV:

JMeterPluginsCMD.bat --generate-csv test.csv --input-jtl results.jtl --plugin-type ResponseTimesOverTime

Yoy may generate CSV and PNG in single tool run. --help will show you short help list on available parameters.

--generate-png <file>generate PNG file containing graph
--generate-csv <file>generate CSV file containing graph data
--input-jtl <file>load data from specified JTL file
--plugin-type <class>which type of graph use for results generation

Use --input-jtl with --plugin-type MergeResults. The file is in JMETER_HOME/bin dir.

You may customize graph drawing and data processing like GUI settings do with optional parameters:

--width <pixels>for PNG only - width of the image, default is 800
--height <pixels>for PNG only - height of the image, default is 600
--granulation <ms>granulation time for samples
--relative-times <yes/no>use relative X axis times, no will set absolute times
--aggregate-rows <yes/no>aggregate all rows into one
--paint-gradient <yes/no>paint gradient background
--paint-zeroing <yes/no>paint zeroing lines
--paint-markers <yes/no>paint markers on data points (since 1.1.3)
--prevent-outliers <yes/no>prevent outliers on distribution graph
--limit-rows <num of points>limit number of points in row
--force-y <limit>force Y axis limit
--hide-low-counts <limit>hide points with sample count below limit
--success-filter <true/false>filter samples by success flag (since 0.5.6), possible values are true, false, if not set no filtering on success flag will occur
--include-labels <labels list>include in report only samples with specified labels, comma-separated
--exclude-labels <labels list>exclude from report samples with specified labels, comma-separated
--auto-scale <yes/no>enable/disable auto-scale multipliers for perfmon/composite graph
--line-weight <num of pixels>line thickness for graph rows
--extractor-regexps <regExps list>list of keyRegExp and valRegExp pairs separated with {;}, only used by PageDataExtractorOverTime
--include-label-regex <true/false>include samples using regular expression
--exclude-label-regex <true/false>exclude samples using regular expression
--start-offset <sec>include in report only samples with (timestamp - relativeStartTime) > startOffset
--end-offset <sec>include in report only samples with (timestamp - relativeStartTime) < endOffset

Plugin Type Classes

Make note that you need to install corresponding plugins set to have Extras plugins available in CMD.

Most of class names are self-explanatory:

  • AggregateReport = JMeter's native Aggregate Report, can be saved only as CSV
  • SynthesisReport = mix between JMeter's native Summary Report and Aggregate Report, can be saved only as CSV
  • ThreadsStateOverTime = Active Threads Over Time
  • BytesThroughputOverTime
  • HitsPerSecond
  • LatenciesOverTime
  • PerfMon = PerfMon Metrics Collector
  • DbMon = DbMon Metrics Collector, DataBase, get performance counters via sql
  • JMXMon = JMXMon Metrics Collector, Java Management Extensions counters
  • ResponseCodesPerSecond
  • ResponseTimesDistribution
  • ResponseTimesOverTime
  • ResponseTimesPercentiles
  • ThroughputVsThreads
  • TimesVsThreads = Response Times VS Threads
  • TransactionsPerSecond
  • PageDataExtractorOverTime
  • MergeResults = MergeResults Command Line Merge Tool to simplify the comparison of two or more load tests, need properties file (like

Other Ways to Automate Reporting

You can use BM.Sense service to automate test results storage and reporting. See also: BM.Sense Uploader plugin.