Skip to content
Kamil Baczkowicz edited this page Jul 1, 2016 · 2 revisions

Key features

  • Auto-refresh for live data
  • Historical values
  • One or more topics (select which from the summary table or define new series)
  • Plotted value can be:
    • Message payload (could be formatted)
    • Result of a JSONPath expression (for JSON messages)
    • Result of an XPath expression (for XML messages)
    • Message payload size
  • Message load charts (i.e. how many messages are being received)
  • Pan and zoom
  • Value tooltips
  • Manual and automatic export of the chart image to a PNG file

Screenshots

http://baczkowicz.pl/mqtt-spy/images/mqtt-spy_v0.1.8_charts.png http://baczkowicz.pl/mqtt-spy/images/mqtt-spy_v0.1.8_charts-local-load.png http://baczkowicz.pl/mqtt-spy/images/mqtt-spy_v0.1.8_charts-eclipse-load.png http://baczkowicz.pl/mqtt-spy/images/mqtt-spy_v0.1.8_charts-eclipse-clients.png http://baczkowicz.pl/mqtt-spy/images/mqtt-spy_v0.5.1_charts.png

JSONPath (available from version 0.5.1)

To plot a result of a JSONPath expression do the following:

  • Add a new series (click the Add button) or edit an existing one (select Edit in the context menu of the existing series)
  • Change the type of the series to JSONPath
  • Type in your JSONPath expression into the 'Value expression' field

Example

For the following JSON document:

{
          "humidity": 59.6,
          "temp": 19.7
}

the following expression will extract the humidity value:

$.humidity

XPath (available from version 0.5.2)

To plot a result of a XPath expression do the following:

  • Add a new series (click the Add button) or edit an existing one (select Edit in the context menu of the existing series)
  • Change the type of the series to XPath
  • Type in your XPath expression into the 'Value expression' field

Example

For the following XML document:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<msg>
          <temp>20.9</temp>
          <energy>108</energy>
</msg>

the following expression will extract the energy value:

/msg/energy

Pan and zoom in charts

To pan around the chart, use right click drag or CTRL/CMD + left click.

For zooming, use the following:

  • Drag mouse (with left click) in plot area to zoom in both axes
  • Drag mouse (with left click) on X axis to zoom in that axis only
  • Drag mouse (with left click) on Y axis to zoom in that axis only
  • Mouse wheel to zoom in/out plot area (X axis and Y axis)
  • Mouse wheel on X axis to zoom in/out that axis only
  • Mouse wheel on Y axis to zoom in/out that axis only

To reset, double click on the chart or use the context menu in Options.