aboutsummaryrefslogtreecommitdiff
path: root/collector/netdev_linux_test.go
diff options
context:
space:
mode:
authorNoam Meltzer <tsnoam@gmail.com>2019-05-31 18:55:50 +0300
committerBen Kochie <superq@gmail.com>2019-05-31 17:55:50 +0200
commit501ccf9fb4ccc8d8b42d8936b4d8846604f9ac97 (patch)
tree677d0201c83da29d3271d3c23a58861abcfed321 /collector/netdev_linux_test.go
parentfc02b5dfbc32f12c8408e7baa2e65c6077089d85 (diff)
downloadprometheus_node_collector-501ccf9fb4ccc8d8b42d8936b4d8846604f9ac97.tar.bz2
prometheus_node_collector-501ccf9fb4ccc8d8b42d8936b4d8846604f9ac97.tar.xz
prometheus_node_collector-501ccf9fb4ccc8d8b42d8936b4d8846604f9ac97.zip
Add --collector.netdev.device-whitelist flag (#1279)
* Add --collector.netdev.device-whitelist flag Sometimes it is desired to monitor only one netdev. The golang regexp does not support a negated regex, so the ignored-devices flag is too cumbersome for this task. This change introduces a new flag: accept-devices, which is mutually exclusive to ignored-devices. This flag allows specifying ONLY the netdev you'd like. Signed-off-by: Noam Meltzer <noam@cynerio.co>
Diffstat (limited to 'collector/netdev_linux_test.go')
-rw-r--r--collector/netdev_linux_test.go24
1 files changed, 22 insertions, 2 deletions
diff --git a/collector/netdev_linux_test.go b/collector/netdev_linux_test.go
index 7228ae2..163c87f 100644
--- a/collector/netdev_linux_test.go
+++ b/collector/netdev_linux_test.go
@@ -19,14 +19,14 @@ import (
19 "testing" 19 "testing"
20) 20)
21 21
22func TestNetDevStats(t *testing.T) { 22func TestNetDevStatsIgnore(t *testing.T) {
23 file, err := os.Open("fixtures/proc/net/dev") 23 file, err := os.Open("fixtures/proc/net/dev")
24 if err != nil { 24 if err != nil {
25 t.Fatal(err) 25 t.Fatal(err)
26 } 26 }
27 defer file.Close() 27 defer file.Close()
28 28
29 netStats, err := parseNetDevStats(file, regexp.MustCompile("^veth")) 29 netStats, err := parseNetDevStats(file, regexp.MustCompile("^veth"), nil)
30 if err != nil { 30 if err != nil {
31 t.Fatal(err) 31 t.Fatal(err)
32 } 32 }
@@ -59,3 +59,23 @@ func TestNetDevStats(t *testing.T) {
59 t.Error("want fixture interface 💩0 to exist, but it does not") 59 t.Error("want fixture interface 💩0 to exist, but it does not")
60 } 60 }
61} 61}
62
63func TestNetDevStatsAccept(t *testing.T) {
64 file, err := os.Open("fixtures/proc/net/dev")
65 if err != nil {
66 t.Fatal(err)
67 }
68 defer file.Close()
69
70 netStats, err := parseNetDevStats(file, nil, regexp.MustCompile("^💩0$"))
71 if err != nil {
72 t.Fatal(err)
73 }
74
75 if want, got := 1, len(netStats); want != got {
76 t.Errorf("want count of devices to be %d, got %d", want, got)
77 }
78 if want, got := "72", netStats["💩0"]["receive_multicast"]; want != got {
79 t.Error("want fixture interface 💩0 to exist, but it does not")
80 }
81}