@cryptotaxi247 / netdata-1 / commits / 314e05878

fix(go.d/snmp): replace newline control chars with spaces in system info (#20301)

Ilya Mashchenko committed May 19, 2025 at 15:08 UTC 314e05878c884cd526e4d84bfabf6b790c78a9c1
1 file changed +6 -4
src/go/plugin/go.d/agent/discovery/sd/discoverer/snmpsd/sysinfo.go
+6 -4
@@ -39,16 +39,15 @@ func GetSysInfo(client gosnmp.Handler) (*SysInfo, error) {
39 Organization: "Unknown",
40 }
41
42 - r := strings.NewReplacer("\n", "\\n", "\r", "\\r")
42 + r := strings.NewReplacer("\n", " ", "\r", " ")
43
44 for _, pdu := range pdus {
45 oid := strings.TrimPrefix(pdu.Name, ".")
46
47 switch oid {
48 case OidSysDescr:
49 - if si.Descr, err = PduToString(pdu); err == nil {
50 - si.Descr = r.Replace(si.Descr)
51 - }
49 + si.Descr, err = PduToString(pdu)
50 + si.Descr = r.Replace(si.Descr)
51 case OidSysObject:
52 var sysObj string
53 if sysObj, err = PduToString(pdu); err == nil {
@@ -57,10 +56,13 @@ func GetSysInfo(client gosnmp.Handler) (*SysInfo, error) {
56 }
57 case OidSysContact:
58 si.Contact, err = PduToString(pdu)
59 + si.Contact = r.Replace(si.Contact)
60 case OidSysName:
61 si.Name, err = PduToString(pdu)
62 + si.Name = r.Replace(si.Name)
63 case OidSysLocation:
64 si.Location, err = PduToString(pdu)
65 + si.Location = r.Replace(si.Location)
66 }
67 if err != nil {
68 return nil, fmt.Errorf("OID '%s': %v", pdu.Name, err)