Hello,

the status of audio streams through an Open Digital Radio multiplexer is monitored in Xymon. A Perl script retrieves the status and statistics from the multiplexer, and sent them to Xymon. The statistics are to be shown in graphs. However, while the RR databases are build, no graphs are shown.

I am using debian 8.6 with xymon 4.3.17. (An update to version 4.3.27 failed, as the configure script does not recognise rrdtool 1.4.8, resulting in a version of xymon which does not support trend graphs.) A perl script retrieves the status of (the input channels of) the multiplexer, and sends the message to xymon. The statistics are included in the format which is also used by devmon. The status message of test odr_mux looks like:

<b>Open Digital Radio DabMux status</b>

<table border=0>
  <tr> <td>service</td> <td>ODR-DabMux v1.1.0 MGMT Server</td> </tr>
</table>

<table border=1 cellpadding=5>
  <tr> <th>Subchannel</th> <th>State</th> <th>Peak left [dB]</th> <th>Peak right
[dB]</th> <th>Underrun [/s]</th> <th>Overrun [/s]</th> </tr>
  <tr> <td>sub-ozo</td> <td>NoData &red</td> <td align='right'> &yellow -90</td>
<td align='right'> &yellow -90</td> <td align='right'> &red 41.34</td> <td
align='right'> &green 0.00</td> </tr>
  <tr> <td>sub-urk</td> <td>NoData &red</td> <td align='right'> &yellow -90</td>
<td align='right'> &yellow -90</td> <td align='right'> &red 41.34</td> <td
align='right'> &green 0.00</td> </tr>
</table>
<!-- linecount=2 -->
<!--DEVMON RRD: odr 0 0
DS:PeakLeft:GAUGE:600:-100:100 DS:PeakRight:GAUGE:600:-100:100
DS:Underrun:DERIVE:600:0:U DS:Overrun:DERIVE:600:0:U DS:BufferMin:GAUGE:600:-1:U
DS:BufferMax:GAUGE:600:0:U
sub-ozo -90:-90:176972:0:-1:0
sub-urk -90:-90:176972:0:-1:0
-->

In xymonserver.cfg two lines are adapted:

TEST2RRD=".... ,odr_mux=devmon"
GRAPHS=" .... ,odr_mux::1"

The statistics are entered in RRD's:

root@debian:/var/lib/xymon/rrd/OzoNop# ls -l odr*
-rw-r--r-- 1 xymon xymon 114560 Jan  8 19:04 odr.sub-ozo.rrd
-rw-r--r-- 1 xymon xymon 114560 Jan  8 19:04 odr.sub-urk.rrd
root@debian:/var/lib/xymon/rrd/OzoNop#

The graph definition is:

[odr_mux]
     FNPATTERN ^odr\.(.+)\.rrd$
     TITLE , Frame loss rate
     YAXIS Rate [/s]
     DEF:ur@RRDIDX@=@RRDFN@:Underrun:AVERAGE
     DEF:or@RRDIDX@=@RRDFN@:Overrun:AVERAGE
     LINE1:ur@RRDIDX@#FF0000:@RRDPARAM@ underrun
     GPRINT:ur@RRDIDX@:MIN:Min \: %5.1lf %s
     GPRINT:ur@RRDIDX@:MAX:Max \: %5.1lf %s
     GPRINT:ur@RRDIDX@:AVERAGE:Avg \: %5.1lf %s
     GPRINT:ur@RRDIDX@:LAST:Cur \: %5.1lf %s\n
     LINE1:or@RRDIDX@#00FF00:@RRDPARAM@  overrun
     GPRINT:or@RRDIDX@:MIN:Min \: %5.1lf %s
     GPRINT:or@RRDIDX@:MAX:Max \: %5.1lf %s
     GPRINT:or@RRDIDX@:AVERAGE:Avg \: %5.1lf %s
     GPRINT:or@RRDIDX@:LAST:Cur \: %5.1lf %s\n

The web page of this test shows the two tables, but no graphs. Only the magnifying glasses, which should be on the right of a graph, are shown. When clicking on the magnifying glass, an empty page is shown. The source code of this page is:

<html><head><title>Invalid request</title></head>
<body></body></html>

Removing the graph definition results in a link to be displayed, and the magnifying glass shows an appropriate error message. Further experiments showed that if all multi-graph stuff is removed (that is, FNPATTERN and the @RRD...@ parameters) a single graph is shown. Extending the graph definition with FNPATTERN causes to problem to surface again.

The logfiles of xymon do not contain messages related to this problem, as far as I can see. Enabling debugging for xymond_rrd, the one spawn by the status channel reader, does not give any helpful information.

All the other graphs, including one multi-graph (test memory), of this host are displayed. The problem is only visible in test odr_mux.

Can anyone give me a hint on how to proceed to solve this issue?

Regards,
   Wim Nelis.