Control: tag -1 + unreproducible moreinfo Control: reassign -1 xymon Hi David,
I've now managed to temporarily install xymon-client on a machine which has: * Xymon 4.3.27-3+b1 * systemd as init system * These interfaces: → ifconfig | egrep '^[^ ]' enp0s25: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500 lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536 teredo: flags=4305<UP,POINTOPOINT,RUNNING,NOARP,MULTICAST> mtu 1280 wlp3s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 This should be close enough to your setup. Axel Beckert wrote: > xymond/rrd/do_ifstat.c, starting at line 21: > > 19 /* eth0 Link encap: > */ > 20 /* RX bytes: 1829192 (265.8 MiB) TX bytes: 1827320 (187.7 MiB > */ > 21 static const char *ifstat_linux_exprs[] = { > 22 "^([a-z0-9]+(_[0-9]+)?:*|lo:?)\\s", > 23 "^\\s+RX bytes:([0-9]+) .*TX bytes.([0-9]+) ", > 24 "^\\s+RX packets\\s+[0-9]+\\s+bytes\\s+([0-9]+) ", > 25 "^\\s+TX packets\\s+[0-9]+\\s+bytes\\s+([0-9]+) " > 26 }; > > Note that the trailing colon is already supported in line 22. That > clearly marks our initial suspicion as wrong. Even later: > > 216 /* Strip off the last character if it > is a colon (:) */ > 217 if (ifname[strlen(ifname)-1] == ':') > ifname[strlen(ifname)-1] = '\0'; > > But then again that line 22 looks it should just accept names like > "wlp4s0". And it does accept them and works as expected for. These files have been newly created on the server side: # ls -l /var/lib/xymon/rrd/test/*ifstat* -rw-r--r-- 1 xymon xymon 38560 Jan 18 19:49 /var/lib/xymon/rrd/test/ifstat.enp0s25.rrd -rw-r--r-- 1 xymon xymon 38560 Jan 18 19:46 /var/lib/xymon/rrd/test/ifstat.teredo.rrd -rw-r--r-- 1 xymon xymon 38560 Jan 18 19:46 /var/lib/xymon/rrd/test/ifstat.wlp3s0.rrd See also the attached image. On the server side I have the xymon package version 4.3.28~rc2-1 (from Debian experimental) running on a Raspberry Pi. So I unfortunately can't reproduce your issue. In contrary: Works as expected. But then again, until my findings in the code mentioned above, we expected the issue to be in the client. But since the client just sends the unmodified ifconfig output, the issue must be on the server side. So I wonder: Which version of Xymon do you have running on the server side? Is the server side also running Xymon 4.3.27? Or is it running an earlier version than the client, e.g. 4.3.17 from Debian 8 Jessie? According to git blame on the "upstream" branch of Debian's xymon packaging repository, the proper parsing of these interface names got added with Xymon 4.3.22-beta (which also means that xymon 4.3.17-6+deb8u1 in Debian 8 Jessie can't parse these interface names): - "^([a-z]+[0123456789.:]*|lo:?)\\s", + "^([a-z0-9]+(_[0-9]+)?:*|lo:?)\\s", Interestingly the colon was already before. I though found no according hint on that change in the according upstream changelog entry: Changes from 4.3.21 -> 4.3.22-beta (29 Oct 2015) =========================================== * rev 7708 * Ensure we don't leave xymond_hostdata or xymond_history zombies lying around after dropping host records (Reported by Scot Kreienkamp) * Fix up HTML list layout to reflect current standards (Thanks, hal...@calyc3.com) * Fix documentation incorrectly describing multigraph syntax as (e.g.) GRAPH_cpu. Should be GRAPHS_cpu (Thanks, Galen Johnson) * Supports scientific notation for NCV data (Thanks, Axel Beckert) * Increase resolution of xymonnet poll timing results (Thanks, Christoph Berg) * New clock skew RRD files will allow for negative delta values (Thanks, Axel Beckert) * Fix lots of typos! (Debian) * Don't skip over "mailq.rrd" (Roland Rosenfeld) * The signature algorithm used on an SSL-enabled TCP test run by xymonnet is now shown on the sslcert page. (Thanks, Ralph Mitchell) * The cipher list displayed in 'sslcert' tests will now be limited to the cipher that was actually used on the SSL connection. The --showallciphers option to xymonnet will restore the previous behavior. (From idea from Ralph Mitchell) * Provide configurable environment overrides in xymonserver.cfg for standard xymonnet options to fping/xymonping, ntpdate, and traceroute binaries. In regular installs, the intended default options to traceroute (-n -q 2 -w 2 -m 15) were not actually used. This may change in a future release, so it's suggested that users move any custom options to the new TRACEROUTEOPTS setting in xymonserver.cfg. (Orig. thanks, Axel Beckert, ntpdate issues pointed out by Matt Vander Werf) * Enable latent additional SHA digest strengths (sha256, sha512, sha224, sha384) * Don't crash generating wml cards for statuses w/ very long lines (Reported by Axel Beckert) * Flip SenderIP and Hostname columns on ghostlist pages to allow easier cutting and pasting to hosts files * Fix multiple disk volumes reported in on Darwin (OS X) clients. (Thanks, Axel Beckert) * Fix COMPACT parsing; update docs to match expected syntax (Thanks, Brian Scott) * Trailing slash no longer required for URL alias ("http://www.example.com/xymon" should work) * A new XYMONLOCALCLIENTOPTS variable in xymonclient.cfg allows options (e.g., --no-port-listing) to be given to xymond_client when running in local client mode. * Add a method to indicate lines which should be skipped by the NCV RRD processor or which mark the end of data-to-be-processed in the message. * Ensure that nostale is passed down during graph zooming (Thanks, Stef Coene) * Add missing XMH_DATA in loadhosts (Thanks, Jacek Tomasiak) * Search in more locations for default environment files when using xymoncmd * Add a "noflap" override to disable flap detection for any/all tests on a given host (Thanks, Martin Lenko) * Simplify default HTTP error code settings for xymonnet (2xx = green; 3xx = yellow; 4xx/5xx = red) * The protocol.cfg entry for RDP network tests has been updated and should work again (Thanks, Rob Steuer) * Add UDP ports to netstat output returned from darwin clients (Mac OS X) * Fixes to df/inode parsing on darwin clients (Mac OS X) (Thanks, Jason White et al.) * Add httphdr= tag to hosts.cfg to inject arbitrary headers into xymonnet HTTP tests for that host. * Turn memory test yellow if nonsensical numbers are found (>100% used for 'Actual' or Swap) * "optional include" and "optional directory" support actually added * xymongrep: load from the hosts.cfg file and error if unable, unless --loadhostsfromxymond is specified * Collect number of total cores in client data Regards, Axel -- ,''`. | Axel Beckert <a...@debian.org>, http://people.debian.org/~abe/ : :' : | Debian Developer, ftp.ch.debian.org Admin `. `' | 4096R: 2517 B724 C5F6 CA99 5329 6E61 2FF9 CD59 6126 16B5 `- | 1024D: F067 EA27 26B9 C3FC 1486 202E C09E 1D89 9593 0EDE