From: <st...@us...> - 2011-11-27 21:55:16
|
Revision: 6777 http://xymon.svn.sourceforge.net/xymon/?rev=6777&view=rev Author: storner Date: 2011-11-27 21:55:10 +0000 (Sun, 27 Nov 2011) Log Message: ----------- Linux ifstat RRD: Network interface names need not have final digit (eg "sixxs"). Modified Paths: -------------- trunk/xymond/rrd/do_ifstat.c Modified: trunk/xymond/rrd/do_ifstat.c =================================================================== --- trunk/xymond/rrd/do_ifstat.c 2011-11-27 21:32:18 UTC (rev 6776) +++ trunk/xymond/rrd/do_ifstat.c 2011-11-27 21:55:10 UTC (rev 6777) @@ -19,7 +19,7 @@ /* eth0 Link encap: */ /* RX bytes: 1829192 (265.8 MiB) TX bytes: 1827320 (187.7 MiB */ static const char *ifstat_linux_exprs[] = { - "^([a-z]+[0123456789.:]+|lo)\\s", + "^([a-z]+[0123456789.:]*|lo)\\s", "^\\s+RX bytes:([0-9]+) .*TX bytes.([0-9]+) " }; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <st...@us...> - 2012-08-01 12:29:08
|
Revision: 7143 http://xymon.svn.sourceforge.net/xymon/?rev=7143&view=rev Author: storner Date: 2012-08-01 12:28:57 +0000 (Wed, 01 Aug 2012) Log Message: ----------- Merge rev 7134 from 4.3.10 (ifstat RRD fix) Revision Links: -------------- http://xymon.svn.sourceforge.net/xymon/?rev=7134&view=rev Modified Paths: -------------- trunk/xymond/rrd/do_ifstat.c Modified: trunk/xymond/rrd/do_ifstat.c =================================================================== --- trunk/xymond/rrd/do_ifstat.c 2012-08-01 12:27:18 UTC (rev 7142) +++ trunk/xymond/rrd/do_ifstat.c 2012-08-01 12:28:57 UTC (rev 7143) @@ -19,8 +19,10 @@ /* eth0 Link encap: */ /* RX bytes: 1829192 (265.8 MiB) TX bytes: 1827320 (187.7 MiB */ static const char *ifstat_linux_exprs[] = { - "^([a-z]+[0123456789.:]*|lo)\\s", - "^\\s+RX bytes:([0-9]+) .*TX bytes.([0-9]+) " + "^([a-z]+[0123456789.:]*|lo:?)\\s", + "^\\s+RX bytes:([0-9]+) .*TX bytes.([0-9]+) ", + "^\\s+RX packets\\s+[0-9]+\\s+bytes\\s+([0-9]+) ", + "^\\s+TX packets\\s+[0-9]+\\s+bytes\\s+([0-9]+) " }; /* Name MTU Network IP Ipkts Ierrs Ibytes Opkts Oerrs Obytes Coll */ @@ -208,6 +210,10 @@ * Clear everything when we see an interface name. * But we dont want to track the "lo" interface. */ + + /* Strip off the last character if it is a colon (:) */ + if (ifname[strlen(ifname)-1] == ':') ifname[strlen(ifname)-1] = '\0'; + if (strcmp(ifname, "lo") == 0) { xfree(ifname); ifname = NULL; } @@ -218,6 +224,8 @@ } } else if (pickdata(bol, ifstat_linux_pcres[1], 1, &rxstr, &txstr)) dmatch |= 6; + else if (pickdata(bol, ifstat_linux_pcres[2], 1, &rxstr)) dmatch |= 2; + else if (pickdata(bol, ifstat_linux_pcres[3], 1, &txstr)) dmatch |= 4; break; case OS_FREEBSD: This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |