parent
a87d6f0545
commit
c292e3931a
|
@ -70,7 +70,17 @@ func (n *NTPQ) Gather(acc telegraf.Accumulator) error {
|
||||||
lineCounter := 0
|
lineCounter := 0
|
||||||
scanner := bufio.NewScanner(bytes.NewReader(out))
|
scanner := bufio.NewScanner(bytes.NewReader(out))
|
||||||
for scanner.Scan() {
|
for scanner.Scan() {
|
||||||
fields := strings.Fields(scanner.Text())
|
line := scanner.Text()
|
||||||
|
|
||||||
|
tags := make(map[string]string)
|
||||||
|
// if there is an ntpq state prefix, remove it and make it it's own tag
|
||||||
|
// see https://github.com/influxdata/telegraf/issues/1161
|
||||||
|
if strings.ContainsAny(string(line[0]), "*#o+x.-") {
|
||||||
|
tags["state_prefix"] = string(line[0])
|
||||||
|
line = strings.TrimLeft(line, "*#o+x.-")
|
||||||
|
}
|
||||||
|
|
||||||
|
fields := strings.Fields(line)
|
||||||
if len(fields) < 2 {
|
if len(fields) < 2 {
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
|
@ -97,7 +107,6 @@ func (n *NTPQ) Gather(acc telegraf.Accumulator) error {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
tags := make(map[string]string)
|
|
||||||
mFields := make(map[string]interface{})
|
mFields := make(map[string]interface{})
|
||||||
|
|
||||||
// Get tags from output
|
// Get tags from output
|
||||||
|
|
|
@ -32,10 +32,11 @@ func TestSingleNTPQ(t *testing.T) {
|
||||||
"jitter": float64(17.462),
|
"jitter": float64(17.462),
|
||||||
}
|
}
|
||||||
tags := map[string]string{
|
tags := map[string]string{
|
||||||
"remote": "*uschi5-ntp-002.",
|
"remote": "uschi5-ntp-002.",
|
||||||
"refid": "10.177.80.46",
|
"state_prefix": "*",
|
||||||
"stratum": "2",
|
"refid": "10.177.80.46",
|
||||||
"type": "u",
|
"stratum": "2",
|
||||||
|
"type": "u",
|
||||||
}
|
}
|
||||||
acc.AssertContainsTaggedFields(t, "ntpq", fields, tags)
|
acc.AssertContainsTaggedFields(t, "ntpq", fields, tags)
|
||||||
}
|
}
|
||||||
|
@ -60,10 +61,11 @@ func TestBadIntNTPQ(t *testing.T) {
|
||||||
"jitter": float64(17.462),
|
"jitter": float64(17.462),
|
||||||
}
|
}
|
||||||
tags := map[string]string{
|
tags := map[string]string{
|
||||||
"remote": "*uschi5-ntp-002.",
|
"remote": "uschi5-ntp-002.",
|
||||||
"refid": "10.177.80.46",
|
"state_prefix": "*",
|
||||||
"stratum": "2",
|
"refid": "10.177.80.46",
|
||||||
"type": "u",
|
"stratum": "2",
|
||||||
|
"type": "u",
|
||||||
}
|
}
|
||||||
acc.AssertContainsTaggedFields(t, "ntpq", fields, tags)
|
acc.AssertContainsTaggedFields(t, "ntpq", fields, tags)
|
||||||
}
|
}
|
||||||
|
@ -88,10 +90,11 @@ func TestBadFloatNTPQ(t *testing.T) {
|
||||||
"jitter": float64(17.462),
|
"jitter": float64(17.462),
|
||||||
}
|
}
|
||||||
tags := map[string]string{
|
tags := map[string]string{
|
||||||
"remote": "*uschi5-ntp-002.",
|
"remote": "uschi5-ntp-002.",
|
||||||
"refid": "10.177.80.46",
|
"state_prefix": "*",
|
||||||
"stratum": "2",
|
"refid": "10.177.80.46",
|
||||||
"type": "u",
|
"stratum": "2",
|
||||||
|
"type": "u",
|
||||||
}
|
}
|
||||||
acc.AssertContainsTaggedFields(t, "ntpq", fields, tags)
|
acc.AssertContainsTaggedFields(t, "ntpq", fields, tags)
|
||||||
}
|
}
|
||||||
|
@ -117,10 +120,11 @@ func TestDaysNTPQ(t *testing.T) {
|
||||||
"jitter": float64(17.462),
|
"jitter": float64(17.462),
|
||||||
}
|
}
|
||||||
tags := map[string]string{
|
tags := map[string]string{
|
||||||
"remote": "*uschi5-ntp-002.",
|
"remote": "uschi5-ntp-002.",
|
||||||
"refid": "10.177.80.46",
|
"state_prefix": "*",
|
||||||
"stratum": "2",
|
"refid": "10.177.80.46",
|
||||||
"type": "u",
|
"stratum": "2",
|
||||||
|
"type": "u",
|
||||||
}
|
}
|
||||||
acc.AssertContainsTaggedFields(t, "ntpq", fields, tags)
|
acc.AssertContainsTaggedFields(t, "ntpq", fields, tags)
|
||||||
}
|
}
|
||||||
|
@ -146,10 +150,11 @@ func TestHoursNTPQ(t *testing.T) {
|
||||||
"jitter": float64(17.462),
|
"jitter": float64(17.462),
|
||||||
}
|
}
|
||||||
tags := map[string]string{
|
tags := map[string]string{
|
||||||
"remote": "*uschi5-ntp-002.",
|
"remote": "uschi5-ntp-002.",
|
||||||
"refid": "10.177.80.46",
|
"state_prefix": "*",
|
||||||
"stratum": "2",
|
"refid": "10.177.80.46",
|
||||||
"type": "u",
|
"stratum": "2",
|
||||||
|
"type": "u",
|
||||||
}
|
}
|
||||||
acc.AssertContainsTaggedFields(t, "ntpq", fields, tags)
|
acc.AssertContainsTaggedFields(t, "ntpq", fields, tags)
|
||||||
}
|
}
|
||||||
|
@ -175,10 +180,11 @@ func TestMinutesNTPQ(t *testing.T) {
|
||||||
"jitter": float64(17.462),
|
"jitter": float64(17.462),
|
||||||
}
|
}
|
||||||
tags := map[string]string{
|
tags := map[string]string{
|
||||||
"remote": "*uschi5-ntp-002.",
|
"remote": "uschi5-ntp-002.",
|
||||||
"refid": "10.177.80.46",
|
"state_prefix": "*",
|
||||||
"stratum": "2",
|
"refid": "10.177.80.46",
|
||||||
"type": "u",
|
"stratum": "2",
|
||||||
|
"type": "u",
|
||||||
}
|
}
|
||||||
acc.AssertContainsTaggedFields(t, "ntpq", fields, tags)
|
acc.AssertContainsTaggedFields(t, "ntpq", fields, tags)
|
||||||
}
|
}
|
||||||
|
@ -203,10 +209,11 @@ func TestBadWhenNTPQ(t *testing.T) {
|
||||||
"jitter": float64(17.462),
|
"jitter": float64(17.462),
|
||||||
}
|
}
|
||||||
tags := map[string]string{
|
tags := map[string]string{
|
||||||
"remote": "*uschi5-ntp-002.",
|
"remote": "uschi5-ntp-002.",
|
||||||
"refid": "10.177.80.46",
|
"state_prefix": "*",
|
||||||
"stratum": "2",
|
"refid": "10.177.80.46",
|
||||||
"type": "u",
|
"stratum": "2",
|
||||||
|
"type": "u",
|
||||||
}
|
}
|
||||||
acc.AssertContainsTaggedFields(t, "ntpq", fields, tags)
|
acc.AssertContainsTaggedFields(t, "ntpq", fields, tags)
|
||||||
}
|
}
|
||||||
|
@ -278,9 +285,10 @@ func TestBadHeaderNTPQ(t *testing.T) {
|
||||||
"jitter": float64(17.462),
|
"jitter": float64(17.462),
|
||||||
}
|
}
|
||||||
tags := map[string]string{
|
tags := map[string]string{
|
||||||
"remote": "*uschi5-ntp-002.",
|
"remote": "uschi5-ntp-002.",
|
||||||
"refid": "10.177.80.46",
|
"state_prefix": "*",
|
||||||
"type": "u",
|
"refid": "10.177.80.46",
|
||||||
|
"type": "u",
|
||||||
}
|
}
|
||||||
acc.AssertContainsTaggedFields(t, "ntpq", fields, tags)
|
acc.AssertContainsTaggedFields(t, "ntpq", fields, tags)
|
||||||
}
|
}
|
||||||
|
@ -306,9 +314,10 @@ func TestMissingDelayColumnNTPQ(t *testing.T) {
|
||||||
"jitter": float64(17.462),
|
"jitter": float64(17.462),
|
||||||
}
|
}
|
||||||
tags := map[string]string{
|
tags := map[string]string{
|
||||||
"remote": "*uschi5-ntp-002.",
|
"remote": "uschi5-ntp-002.",
|
||||||
"refid": "10.177.80.46",
|
"state_prefix": "*",
|
||||||
"type": "u",
|
"refid": "10.177.80.46",
|
||||||
|
"type": "u",
|
||||||
}
|
}
|
||||||
acc.AssertContainsTaggedFields(t, "ntpq", fields, tags)
|
acc.AssertContainsTaggedFields(t, "ntpq", fields, tags)
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue