Xymon Mailing List Archive search

Graphs not showing

6 messages in this thread

list Wim Nelis · Sun, 8 Jan 2017 18:49:38 +0000 ·
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: Open Digital Radio DabMux status
service ODR-DabMux v1.1.0 MGMT Server
Subchannel State Peak left [dB] Peak right [dB] Underrun [/s] Overrun [/s]
sub-ozo NoData &red &yellow -90 &yellow -90 &red 41.34 &green 0.00
sub-urk NoData &red &yellow -90 &yellow -90 &red 41.34 &green 0.00
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: 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.
list W.J.M. Nelis · Mon, 9 Jan 2017 07:57:52 +0100 ·
Hello,

my previous post was mangled because there were some snippets of HTML in it. Therefore the message is posted again, this time without HTML.


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 last part of the status message of test odr_mux contains the following as HTML comment:

  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
quoted from Wim Nelis

In xymonserver.cfg two lines are adapted:

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

The statistics are entered in RRD's:

root at debian:/var/lib/xymon/rrd/OzoNop# ls -l odr*
quoted from Wim Nelis
-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 at debian:/var/lib/xymon/rrd/OzoNop#
quoted from Wim Nelis

The graph definition is:

[odr_mux]
      FNPATTERN ^odr\.(.+)\.rrd$
      TITLE , Frame loss rate
      YAXIS Rate [/s]

      DEF:ur at RRDIDX@=@RRDFN@:Underrun:AVERAGE
      DEF:or at RRDIDX@=@RRDFN@:Overrun:AVERAGE
      LINE1:ur at RRDIDX@#FF0000:@RRDPARAM@ underrun
      GPRINT:ur at RRDIDX@:MIN:Min \: %5.1lf %s
      GPRINT:ur at RRDIDX@:MAX:Max \: %5.1lf %s
      GPRINT:ur at RRDIDX@:AVERAGE:Avg \: %5.1lf %s
      GPRINT:ur at RRDIDX@:LAST:Cur \: %5.1lf %s\n
      LINE1:or at RRDIDX@#00FF00:@RRDPARAM@  overrun
      GPRINT:or at RRDIDX@:MIN:Min \: %5.1lf %s
      GPRINT:or at RRDIDX@:MAX:Max \: %5.1lf %s
      GPRINT:or at RRDIDX@:AVERAGE:Avg \: %5.1lf %s
      GPRINT:or at 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 two lines long, the first one specifying the title to be "Invalid request", the second on showing an empty body.
quoted from Wim Nelis

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.
list Scot Kreienkamp · Mon, 9 Jan 2017 12:50:26 +0000 ·
Are you sure data is making it into the RRD?  Try using rrdtool dump on the rrd and see if you get any data.


Scot Kreienkamp  | Senior Systems Engineer | La-Z-Boy Corporate
One La-Z-Boy Drive | Monroe, Michigan 48162 |  Office: XXX-XXX-XXXX |  |  Mobile: XXXXXXXXXX | Email: user-9678697f1438@xymon.invalid
-----Original Message-----
From: Xymon [mailto:xymon-bounces at xymon.com] On Behalf Of W.J.M.
Nelis
Sent: Monday, January 09, 2017 1:58 AM
To: xymon at xymon.com
Subject: [Xymon] Graphs not showing
quoted from W.J.M. Nelis

Hello,

my previous post was mangled because there were some snippets of HTML
in
it. Therefore the message is posted again, this time without HTML.


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 last part of the status message of test odr_mux
contains the following as HTML comment:

  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 at 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 at debian:/var/lib/xymon/rrd/OzoNop#

The graph definition is:

[odr_mux]
      FNPATTERN ^odr\.(.+)\.rrd$
      TITLE , Frame loss rate
      YAXIS Rate [/s]
      DEF:ur at RRDIDX@=@RRDFN@:Underrun:AVERAGE
      DEF:or at RRDIDX@=@RRDFN@:Overrun:AVERAGE
      LINE1:ur at RRDIDX@#FF0000:@RRDPARAM@ underrun
      GPRINT:ur at RRDIDX@:MIN:Min \: %5.1lf %s
      GPRINT:ur at RRDIDX@:MAX:Max \: %5.1lf %s
      GPRINT:ur at RRDIDX@:AVERAGE:Avg \: %5.1lf %s
      GPRINT:ur at RRDIDX@:LAST:Cur \: %5.1lf %s\n
      LINE1:or at RRDIDX@#00FF00:@RRDPARAM@  overrun
      GPRINT:or at RRDIDX@:MIN:Min \: %5.1lf %s
      GPRINT:or at RRDIDX@:MAX:Max \: %5.1lf %s
      GPRINT:or at RRDIDX@:AVERAGE:Avg \: %5.1lf %s
      GPRINT:or at 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 two lines long, the first one specifying the title to
be "Invalid request", the second on showing an empty body.

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.

This message is intended only for the individual or entity to which it is addressed.  It may contain privileged, confidential information which is exempt from disclosure under applicable laws.  If you are not the intended recipient, you are strictly prohibited from disseminating or distributing this information (other than to the intended recipient) or copying this information.  If you have received this communication in error, please notify us immediately by e-mail or by telephone at the above number. Thank you.
list W.J.M. Nelis · Mon, 9 Jan 2017 14:30:55 +0100 ·
Hello Scot,
Are you sure data is making it into the RRD?  Try using rrdtool dump on the rrd and see if you get any data.
It has been verified that the data makes it into the RRD. Moreover, in the (test) case that a single graph was generated, two lines were shown, the underrun rate and the overrun rate. The statistics shown below the graph were all non-NaN.

I still don't understand this problem. The data is there in the RRD's, the databases are in the correct place, they are accessible and 'rrdtool dump` shows their content without error messages. If only one in stead of all graphs is requested, the requested graph is shown.

Thanks,
   Wim Nelis.
list Peter Welter · Mon, 16 Jan 2017 16:57:31 +0100 ·
A suggestion since I do have many FNPATTERN definitions, but none like you
use. I think it has something to do with the \ character.

You can also use the EXFNPATTERN if you explicitly want to exclude similar
rrd-files. For example, I use to exclude the la_s_jvm from being parsed:

        FNPATTERN la_s_jv.(.*).rrd

   EXFNPATTERN la_s_jvm.(.*).rrd

Regards Peter

2017-01-09 14:30 GMT+01:00 W.J.M. Nelis <user-6956df205d63@xymon.invalid>:
quoted from W.J.M. Nelis
Hello Scot,

Are you sure data is making it into the RRD?  Try using rrdtool dump on
the rrd and see if you get any data.
It has been verified that the data makes it into the RRD. Moreover, in the
(test) case that a single graph was generated, two lines were shown, the
underrun rate and the overrun rate. The statistics shown below the graph
were all non-NaN.

I still don't understand this problem. The data is there in the RRD's, the
databases are in the correct place, they are accessible and 'rrdtool dump`
shows their content without error messages. If only one in stead of all
graphs is requested, the requested graph is shown.

Thanks,

  Wim Nelis.

list W.J.M. Nelis · Tue, 31 Jan 2017 09:04:10 +0100 ·
Hello,

The problem was solved about a week ago. Xymon requires the name of the RRD's to start with the name of the test. In my case the test was called "odr_mux", while the Devmon header contained "DEVMON RRD: odr 0 0". The latter should have been "DEVMON RRD: odr_mux 0 0". After this change the graphs were shown by Xymon.

As noted earlier, there is no error message indicating a lack of files. Perhaps module showgraph.c, around line 1020 should be changed from:

         }
         rrddbs[rrddbcount].key = rrddbs[rrddbcount].rrdfn = rrddbs[rrddbcount].rrdparam = NULL;

         /* Sort them so the display looks prettier */
         qsort(&rrddbs[0], rrddbcount, sizeof(rrddb_t), rrd_name_compare);

into:

         }
         rrddbs[rrddbcount].key = rrddbs[rrddbcount].rrdfn = rrddbs[rrddbcount].rrdparam = NULL;
         if ( rrddbcount == 0 ) errormsg("invalid request - no matching RRDs found");

         /* Sort them so the display looks prettier */
         qsort(&rrddbs[0], rrddbcount, sizeof(rrddb_t), rrd_name_compare);

The variable wantsingle in function generate_graph in module showgraph.c was obviously true in my case, although a multi-graph was requested. It is not clear to me why this variable was set to true in my case.

Regards,
   Wim Nelis.