aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDmitriy Lukyanchikov <31628587+dmitriy-lukyanchikov@users.noreply.github.com>2018-04-14 14:58:56 +0300
committerJohannes 'fish' Ziemke <github@freigeist.org>2018-04-14 13:58:56 +0200
commiteddd1b9357d951d29c9ea5ed722574dd2110d253 (patch)
tree0563dd4d9fafe33dca5b69c405fb8ba1ee48a913
parent4a94ed180c91c1430802ada8ee7414526afdab88 (diff)
downloadprometheus_node_collector-eddd1b9357d951d29c9ea5ed722574dd2110d253.tar.bz2
prometheus_node_collector-eddd1b9357d951d29c9ea5ed722574dd2110d253.tar.xz
prometheus_node_collector-eddd1b9357d951d29c9ea5ed722574dd2110d253.zip
Fix netdev collector for linux (#890)
fix variable name, fix transmitHeader extracting modify fixtures to run tests with updated netdev_linux collector Signed-off-by: dmitriy-lukyanchikov <d.lukyanchikov@anchorfree.com>
-rw-r--r--collector/fixtures/e2e-output.txt36
-rw-r--r--collector/netdev_linux.go18
2 files changed, 30 insertions, 24 deletions
diff --git a/collector/fixtures/e2e-output.txt b/collector/fixtures/e2e-output.txt
index 645c75b..1795826 100644
--- a/collector/fixtures/e2e-output.txt
+++ b/collector/fixtures/e2e-output.txt
@@ -1745,6 +1745,24 @@ node_network_transmit_bytes_total{device="lxcbr0"} 2.630299e+06
1745node_network_transmit_bytes_total{device="tun0"} 67120 1745node_network_transmit_bytes_total{device="tun0"} 67120
1746node_network_transmit_bytes_total{device="veth4B09XN"} 1.943284e+06 1746node_network_transmit_bytes_total{device="veth4B09XN"} 1.943284e+06
1747node_network_transmit_bytes_total{device="wlan0"} 2.85164936e+09 1747node_network_transmit_bytes_total{device="wlan0"} 2.85164936e+09
1748# HELP node_network_transmit_carrier_total Network device statistic transmit_carrier.
1749# TYPE node_network_transmit_carrier_total counter
1750node_network_transmit_carrier_total{device="docker0"} 0
1751node_network_transmit_carrier_total{device="eth0"} 0
1752node_network_transmit_carrier_total{device="lo"} 0
1753node_network_transmit_carrier_total{device="lxcbr0"} 0
1754node_network_transmit_carrier_total{device="tun0"} 0
1755node_network_transmit_carrier_total{device="veth4B09XN"} 0
1756node_network_transmit_carrier_total{device="wlan0"} 0
1757# HELP node_network_transmit_colls_total Network device statistic transmit_colls.
1758# TYPE node_network_transmit_colls_total counter
1759node_network_transmit_colls_total{device="docker0"} 0
1760node_network_transmit_colls_total{device="eth0"} 0
1761node_network_transmit_colls_total{device="lo"} 0
1762node_network_transmit_colls_total{device="lxcbr0"} 0
1763node_network_transmit_colls_total{device="tun0"} 0
1764node_network_transmit_colls_total{device="veth4B09XN"} 0
1765node_network_transmit_colls_total{device="wlan0"} 0
1748# HELP node_network_transmit_compressed_total Network device statistic transmit_compressed. 1766# HELP node_network_transmit_compressed_total Network device statistic transmit_compressed.
1749# TYPE node_network_transmit_compressed_total counter 1767# TYPE node_network_transmit_compressed_total counter
1750node_network_transmit_compressed_total{device="docker0"} 0 1768node_network_transmit_compressed_total{device="docker0"} 0
@@ -1781,24 +1799,6 @@ node_network_transmit_fifo_total{device="lxcbr0"} 0
1781node_network_transmit_fifo_total{device="tun0"} 0 1799node_network_transmit_fifo_total{device="tun0"} 0
1782node_network_transmit_fifo_total{device="veth4B09XN"} 0 1800node_network_transmit_fifo_total{device="veth4B09XN"} 0
1783node_network_transmit_fifo_total{device="wlan0"} 0 1801node_network_transmit_fifo_total{device="wlan0"} 0
1784# HELP node_network_transmit_frame_total Network device statistic transmit_frame.
1785# TYPE node_network_transmit_frame_total counter
1786node_network_transmit_frame_total{device="docker0"} 0
1787node_network_transmit_frame_total{device="eth0"} 0
1788node_network_transmit_frame_total{device="lo"} 0
1789node_network_transmit_frame_total{device="lxcbr0"} 0
1790node_network_transmit_frame_total{device="tun0"} 0
1791node_network_transmit_frame_total{device="veth4B09XN"} 0
1792node_network_transmit_frame_total{device="wlan0"} 0
1793# HELP node_network_transmit_multicast_total Network device statistic transmit_multicast.
1794# TYPE node_network_transmit_multicast_total counter
1795node_network_transmit_multicast_total{device="docker0"} 0
1796node_network_transmit_multicast_total{device="eth0"} 0
1797node_network_transmit_multicast_total{device="lo"} 0
1798node_network_transmit_multicast_total{device="lxcbr0"} 0
1799node_network_transmit_multicast_total{device="tun0"} 0
1800node_network_transmit_multicast_total{device="veth4B09XN"} 0
1801node_network_transmit_multicast_total{device="wlan0"} 0
1802# HELP node_network_transmit_packets_total Network device statistic transmit_packets. 1802# HELP node_network_transmit_packets_total Network device statistic transmit_packets.
1803# TYPE node_network_transmit_packets_total counter 1803# TYPE node_network_transmit_packets_total counter
1804node_network_transmit_packets_total{device="docker0"} 1.929779e+06 1804node_network_transmit_packets_total{device="docker0"} 1.929779e+06
diff --git a/collector/netdev_linux.go b/collector/netdev_linux.go
index 82657a0..3b829be 100644
--- a/collector/netdev_linux.go
+++ b/collector/netdev_linux.go
@@ -50,12 +50,15 @@ func parseNetDevStats(r io.Reader, ignore *regexp.Regexp) (map[string]map[string
50 scanner.Text()) 50 scanner.Text())
51 } 51 }
52 52
53 header := strings.Fields(parts[1]) 53 receiveHeader := strings.Fields(parts[1])
54 transmitHeader := strings.Fields(parts[2])
55 headerLength := len(receiveHeader)+len(transmitHeader)+1
56
54 netDev := map[string]map[string]string{} 57 netDev := map[string]map[string]string{}
55 for scanner.Scan() { 58 for scanner.Scan() {
56 line := strings.TrimLeft(scanner.Text(), " ") 59 line := strings.TrimLeft(scanner.Text(), " ")
57 parts := procNetDevFieldSep.Split(line, -1) 60 parts := procNetDevFieldSep.Split(line, -1)
58 if len(parts) != 2*len(header)+1 { 61 if len(parts) != headerLength {
59 return nil, fmt.Errorf("invalid line in net/dev: %s", scanner.Text()) 62 return nil, fmt.Errorf("invalid line in net/dev: %s", scanner.Text())
60 } 63 }
61 64
@@ -65,10 +68,13 @@ func parseNetDevStats(r io.Reader, ignore *regexp.Regexp) (map[string]map[string
65 continue 68 continue
66 } 69 }
67 netDev[dev] = map[string]string{} 70 netDev[dev] = map[string]string{}
68 for i, v := range header { 71 for i := 0; i < len(receiveHeader); i++ {
69 netDev[dev]["receive_"+v] = parts[i+1] 72 netDev[dev]["receive_"+receiveHeader[i]] = parts[i+1]
70 netDev[dev]["transmit_"+v] = parts[i+1+len(header)] 73 }
71 } 74
75 for i := 0; i < len(transmitHeader); i++ {
76 netDev[dev]["transmit_"+transmitHeader[i]] = parts[i+1+len(receiveHeader)]
77 }
72 } 78 }
73 return netDev, scanner.Err() 79 return netDev, scanner.Err()
74} 80}