@cryptotaxi247 / netdata-1 / commits / ec1daedab

fix(go.d/snmp): use 32bit counters if 64 aren't available (#20249)

Ilya Mashchenko committed May 7, 2025 at 16:12 UTC ec1daedab54c78e55d1b03a1a05a95956de3794d
1 file changed +19 -8
src/go/plugin/go.d/collector/snmp/collect_if_mib.go
+19 -8
@@ -183,14 +183,25 @@ func (c *Collector) collectNetworkInterfaces(mx map[string]int64) error {
183 }
184
185 px := fmt.Sprintf("net_iface_%s_", iface.ifName)
186 - mx[px+"traffic_in"] = iface.ifHCInOctets * 8 / 1000 // kilobits
187 - mx[px+"traffic_out"] = iface.ifHCOutOctets * 8 / 1000 // kilobits
188 - mx[px+"ucast_in"] = iface.ifHCInUcastPkts
189 - mx[px+"ucast_out"] = iface.ifHCOutUcastPkts
190 - mx[px+"mcast_in"] = iface.ifHCInMulticastPkts
191 - mx[px+"mcast_out"] = iface.ifHCOutMulticastPkts
192 - mx[px+"bcast_in"] = iface.ifHCInBroadcastPkts
193 - mx[px+"bcast_out"] = iface.ifHCOutBroadcastPkts
186 + if len(ifMibXTable) == 0 {
187 + mx[px+"traffic_in"] = iface.ifInOctets * 8 / 1000 // kilobits
188 + mx[px+"traffic_out"] = iface.ifOutOctets * 8 / 1000 // kilobits
189 + mx[px+"ucast_in"] = iface.ifInUcastPkts
190 + mx[px+"ucast_out"] = iface.ifOutUcastPkts
191 + mx[px+"mcast_in"] = iface.ifInMulticastPkts
192 + mx[px+"mcast_out"] = iface.ifOutMulticastPkts
193 + mx[px+"bcast_in"] = iface.ifInBroadcastPkts
194 + mx[px+"bcast_out"] = iface.ifOutBroadcastPkts
195 + } else {
196 + mx[px+"traffic_in"] = iface.ifHCInOctets * 8 / 1000 // kilobits
197 + mx[px+"traffic_out"] = iface.ifHCOutOctets * 8 / 1000 // kilobits
198 + mx[px+"ucast_in"] = iface.ifHCInUcastPkts
199 + mx[px+"ucast_out"] = iface.ifHCOutUcastPkts
200 + mx[px+"mcast_in"] = iface.ifHCInMulticastPkts
201 + mx[px+"mcast_out"] = iface.ifHCOutMulticastPkts
202 + mx[px+"bcast_in"] = iface.ifHCInBroadcastPkts
203 + mx[px+"bcast_out"] = iface.ifHCOutBroadcastPkts
204 + }
205 mx[px+"errors_in"] = iface.ifInErrors
206 mx[px+"errors_out"] = iface.ifOutErrors
207 mx[px+"discards_in"] = iface.ifInDiscards