summaryrefslogtreecommitdiffstats
path: root/collectors/proc.plugin/proc_net_snmp.c
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--collectors/proc.plugin/proc_net_snmp.c (renamed from src/proc_net_snmp.c)253
1 files changed, 159 insertions, 94 deletions
diff --git a/src/proc_net_snmp.c b/collectors/proc.plugin/proc_net_snmp.c
index 43c010c14..ffd368f6e 100644
--- a/src/proc_net_snmp.c
+++ b/collectors/proc.plugin/proc_net_snmp.c
@@ -1,6 +1,9 @@
-#include "common.h"
+// SPDX-License-Identifier: GPL-3.0-or-later
-#define RRD_TYPE_NET_SNMP "ipv4"
+#include "plugin_proc.h"
+#define PLUGIN_PROC_MODULE_NET_SNMP_NAME "/proc/net/snmp"
+
+#define RRD_TYPE_NET_SNMP "ipv4"
static struct proc_net_snmp {
// kernel_uint_t ip_Forwarding;
@@ -102,23 +105,22 @@ int do_proc_net_snmp(int update_every, usec_t dt) {
*arl_udplite = NULL;
static RRDVAR *tcp_max_connections_var = NULL;
- static ssize_t last_max_connections = 0;
if(unlikely(!arl_ip)) {
- do_ip_packets = config_get_boolean("plugin:proc:/proc/net/snmp", "ipv4 packets", 1);
- do_ip_fragsout = config_get_boolean("plugin:proc:/proc/net/snmp", "ipv4 fragments sent", 1);
- do_ip_fragsin = config_get_boolean("plugin:proc:/proc/net/snmp", "ipv4 fragments assembly", 1);
- do_ip_errors = config_get_boolean("plugin:proc:/proc/net/snmp", "ipv4 errors", 1);
- do_tcp_sockets = config_get_boolean("plugin:proc:/proc/net/snmp", "ipv4 TCP connections", 1);
- do_tcp_packets = config_get_boolean("plugin:proc:/proc/net/snmp", "ipv4 TCP packets", 1);
- do_tcp_errors = config_get_boolean("plugin:proc:/proc/net/snmp", "ipv4 TCP errors", 1);
- do_tcp_opens = config_get_boolean("plugin:proc:/proc/net/snmp", "ipv4 TCP opens", 1);
- do_tcp_handshake = config_get_boolean("plugin:proc:/proc/net/snmp", "ipv4 TCP handshake issues", 1);
- do_udp_packets = config_get_boolean("plugin:proc:/proc/net/snmp", "ipv4 UDP packets", 1);
- do_udp_errors = config_get_boolean("plugin:proc:/proc/net/snmp", "ipv4 UDP errors", 1);
- do_icmp_packets = config_get_boolean("plugin:proc:/proc/net/snmp", "ipv4 ICMP packets", 1);
- do_icmpmsg = config_get_boolean("plugin:proc:/proc/net/snmp", "ipv4 ICMP messages", 1);
- do_udplite_packets = config_get_boolean("plugin:proc:/proc/net/snmp", "ipv4 UDPLite packets", 1);
+ do_ip_packets = config_get_boolean_ondemand("plugin:proc:/proc/net/snmp", "ipv4 packets", CONFIG_BOOLEAN_AUTO);
+ do_ip_fragsout = config_get_boolean_ondemand("plugin:proc:/proc/net/snmp", "ipv4 fragments sent", CONFIG_BOOLEAN_AUTO);
+ do_ip_fragsin = config_get_boolean_ondemand("plugin:proc:/proc/net/snmp", "ipv4 fragments assembly", CONFIG_BOOLEAN_AUTO);
+ do_ip_errors = config_get_boolean_ondemand("plugin:proc:/proc/net/snmp", "ipv4 errors", CONFIG_BOOLEAN_AUTO);
+ do_tcp_sockets = config_get_boolean_ondemand("plugin:proc:/proc/net/snmp", "ipv4 TCP connections", CONFIG_BOOLEAN_AUTO);
+ do_tcp_packets = config_get_boolean_ondemand("plugin:proc:/proc/net/snmp", "ipv4 TCP packets", CONFIG_BOOLEAN_AUTO);
+ do_tcp_errors = config_get_boolean_ondemand("plugin:proc:/proc/net/snmp", "ipv4 TCP errors", CONFIG_BOOLEAN_AUTO);
+ do_tcp_opens = config_get_boolean_ondemand("plugin:proc:/proc/net/snmp", "ipv4 TCP opens", CONFIG_BOOLEAN_AUTO);
+ do_tcp_handshake = config_get_boolean_ondemand("plugin:proc:/proc/net/snmp", "ipv4 TCP handshake issues", CONFIG_BOOLEAN_AUTO);
+ do_udp_packets = config_get_boolean_ondemand("plugin:proc:/proc/net/snmp", "ipv4 UDP packets", CONFIG_BOOLEAN_AUTO);
+ do_udp_errors = config_get_boolean_ondemand("plugin:proc:/proc/net/snmp", "ipv4 UDP errors", CONFIG_BOOLEAN_AUTO);
+ do_icmp_packets = config_get_boolean_ondemand("plugin:proc:/proc/net/snmp", "ipv4 ICMP packets", CONFIG_BOOLEAN_AUTO);
+ do_icmpmsg = config_get_boolean_ondemand("plugin:proc:/proc/net/snmp", "ipv4 ICMP messages", CONFIG_BOOLEAN_AUTO);
+ do_udplite_packets = config_get_boolean_ondemand("plugin:proc:/proc/net/snmp", "ipv4 UDPLite packets", CONFIG_BOOLEAN_AUTO);
hash_ip = simple_hash("Ip");
hash_tcp = simple_hash("Tcp");
@@ -181,7 +183,7 @@ int do_proc_net_snmp(int update_every, usec_t dt) {
// arl_expect(arl_tcp, "RtoAlgorithm", &snmp_root.tcp_RtoAlgorithm);
// arl_expect(arl_tcp, "RtoMin", &snmp_root.tcp_RtoMin);
// arl_expect(arl_tcp, "RtoMax", &snmp_root.tcp_RtoMax);
- arl_expect(arl_tcp, "MaxConn", &snmp_root.tcp_MaxConn);
+ arl_expect_custom(arl_tcp, "MaxConn", arl_callback_ssize_t, &snmp_root.tcp_MaxConn);
arl_expect(arl_tcp, "ActiveOpens", &snmp_root.tcp_ActiveOpens);
arl_expect(arl_tcp, "PassiveOpens", &snmp_root.tcp_PassiveOpens);
arl_expect(arl_tcp, "AttemptFails", &snmp_root.tcp_AttemptFails);
@@ -256,7 +258,9 @@ int do_proc_net_snmp(int update_every, usec_t dt) {
// --------------------------------------------------------------------
- if(do_ip_packets) {
+ if(do_ip_packets == CONFIG_BOOLEAN_YES || (do_ip_packets == CONFIG_BOOLEAN_AUTO && (snmp_root.ip_OutRequests || snmp_root.ip_InReceives || snmp_root.ip_ForwDatagrams || snmp_root.ip_InDelivers))) {
+ do_ip_packets = CONFIG_BOOLEAN_YES;
+
static RRDSET *st = NULL;
static RRDDIM *rd_InReceives = NULL,
*rd_OutRequests = NULL,
@@ -272,9 +276,9 @@ int do_proc_net_snmp(int update_every, usec_t dt) {
, NULL
, "IPv4 Packets"
, "packets/s"
- , "proc"
- , "net/snmp"
- , 2450
+ , PLUGIN_PROC_NAME
+ , PLUGIN_PROC_MODULE_NET_SNMP_NAME
+ , NETDATA_CHART_PRIO_IPV4_PACKETS
, update_every
, RRDSET_TYPE_LINE
);
@@ -295,7 +299,9 @@ int do_proc_net_snmp(int update_every, usec_t dt) {
// --------------------------------------------------------------------
- if(do_ip_fragsout) {
+ if(do_ip_fragsout == CONFIG_BOOLEAN_YES || (do_ip_fragsout == CONFIG_BOOLEAN_AUTO && (snmp_root.ip_FragOKs || snmp_root.ip_FragFails || snmp_root.ip_FragCreates))) {
+ do_ip_fragsout = CONFIG_BOOLEAN_YES;
+
static RRDSET *st = NULL;
static RRDDIM *rd_FragOKs = NULL,
*rd_FragFails = NULL,
@@ -310,9 +316,9 @@ int do_proc_net_snmp(int update_every, usec_t dt) {
, NULL
, "IPv4 Fragments Sent"
, "packets/s"
- , "proc"
- , "net/snmp"
- , 3020
+ , PLUGIN_PROC_NAME
+ , PLUGIN_PROC_MODULE_NET_SNMP_NAME
+ , NETDATA_CHART_PRIO_IPV4_FRAGMENTS
, update_every
, RRDSET_TYPE_LINE
);
@@ -332,7 +338,9 @@ int do_proc_net_snmp(int update_every, usec_t dt) {
// --------------------------------------------------------------------
- if(do_ip_fragsin) {
+ if(do_ip_fragsin == CONFIG_BOOLEAN_YES || (do_ip_fragsin == CONFIG_BOOLEAN_AUTO && (snmp_root.ip_ReasmOKs || snmp_root.ip_ReasmFails || snmp_root.ip_ReasmReqds))) {
+ do_ip_fragsin = CONFIG_BOOLEAN_YES;
+
static RRDSET *st = NULL;
static RRDDIM *rd_ReasmOKs = NULL,
*rd_ReasmFails = NULL,
@@ -347,9 +355,9 @@ int do_proc_net_snmp(int update_every, usec_t dt) {
, NULL
, "IPv4 Fragments Reassembly"
, "packets/s"
- , "proc"
- , "net/snmp"
- , 3030
+ , PLUGIN_PROC_NAME
+ , PLUGIN_PROC_MODULE_NET_SNMP_NAME
+ , NETDATA_CHART_PRIO_IPV4_FRAGMENTS + 1
, update_every
, RRDSET_TYPE_LINE
);
@@ -369,7 +377,9 @@ int do_proc_net_snmp(int update_every, usec_t dt) {
// --------------------------------------------------------------------
- if(do_ip_errors) {
+ if(do_ip_errors == CONFIG_BOOLEAN_YES || (do_ip_errors == CONFIG_BOOLEAN_AUTO && (snmp_root.ip_InDiscards || snmp_root.ip_OutDiscards || snmp_root.ip_InHdrErrors || snmp_root.ip_InAddrErrors || snmp_root.ip_InUnknownProtos || snmp_root.ip_OutNoRoutes))) {
+ do_ip_errors = CONFIG_BOOLEAN_YES;
+
static RRDSET *st = NULL;
static RRDDIM *rd_InDiscards = NULL,
*rd_OutDiscards = NULL,
@@ -387,9 +397,9 @@ int do_proc_net_snmp(int update_every, usec_t dt) {
, NULL
, "IPv4 Errors"
, "packets/s"
- , "proc"
- , "net/snmp"
- , 2470
+ , PLUGIN_PROC_NAME
+ , PLUGIN_PROC_MODULE_NET_SNMP_NAME
+ , NETDATA_CHART_PRIO_IPV4_ERRORS
, update_every
, RRDSET_TYPE_LINE
);
@@ -437,7 +447,9 @@ int do_proc_net_snmp(int update_every, usec_t dt) {
// --------------------------------------------------------------------
- if(do_icmp_packets) {
+ if(do_icmp_packets == CONFIG_BOOLEAN_YES || (do_icmp_packets == CONFIG_BOOLEAN_AUTO && (snmp_root.icmp_InMsgs || snmp_root.icmp_OutMsgs || snmp_root.icmp_InErrors || snmp_root.icmp_OutErrors || snmp_root.icmp_InCsumErrors))) {
+ do_icmp_packets = CONFIG_BOOLEAN_YES;
+
{
static RRDSET *st_packets = NULL;
static RRDDIM *rd_InMsgs = NULL,
@@ -452,9 +464,9 @@ int do_proc_net_snmp(int update_every, usec_t dt) {
, NULL
, "IPv4 ICMP Packets"
, "packets/s"
- , "proc"
- , "net/snmp"
- , 2602
+ , PLUGIN_PROC_NAME
+ , PLUGIN_PROC_MODULE_NET_SNMP_NAME
+ , NETDATA_CHART_PRIO_IPV4_ICMP
, update_every
, RRDSET_TYPE_LINE
);
@@ -485,9 +497,9 @@ int do_proc_net_snmp(int update_every, usec_t dt) {
, NULL
, "IPv4 ICMP Errors"
, "packets/s"
- , "proc"
- , "net/snmp"
- , 2603
+ , PLUGIN_PROC_NAME
+ , PLUGIN_PROC_MODULE_NET_SNMP_NAME
+ , NETDATA_CHART_PRIO_IPV4_ICMP + 1
, update_every
, RRDSET_TYPE_LINE
);
@@ -515,8 +527,8 @@ int do_proc_net_snmp(int update_every, usec_t dt) {
}
words = procfile_linewords(ff, l);
- if(words < 3) {
- error("Cannot read /proc/net/snmp IcmpMsg line. Expected 3+ params, read %zu.", words);
+ if(words < 2) {
+ error("Cannot read /proc/net/snmp IcmpMsg line. Expected 2+ params, read %zu.", words);
continue;
}
@@ -528,7 +540,30 @@ int do_proc_net_snmp(int update_every, usec_t dt) {
// --------------------------------------------------------------------
- if(do_icmpmsg) {
+ if(do_icmpmsg == CONFIG_BOOLEAN_YES || (do_icmpmsg == CONFIG_BOOLEAN_AUTO && (
+ snmp_root.icmpmsg_InEchoReps
+ || snmp_root.icmpmsg_OutEchoReps
+ || snmp_root.icmpmsg_InDestUnreachs
+ || snmp_root.icmpmsg_OutDestUnreachs
+ || snmp_root.icmpmsg_InRedirects
+ || snmp_root.icmpmsg_OutRedirects
+ || snmp_root.icmpmsg_InEchos
+ || snmp_root.icmpmsg_OutEchos
+ || snmp_root.icmpmsg_InRouterAdvert
+ || snmp_root.icmpmsg_OutRouterAdvert
+ || snmp_root.icmpmsg_InRouterSelect
+ || snmp_root.icmpmsg_OutRouterSelect
+ || snmp_root.icmpmsg_InTimeExcds
+ || snmp_root.icmpmsg_OutTimeExcds
+ || snmp_root.icmpmsg_InParmProbs
+ || snmp_root.icmpmsg_OutParmProbs
+ || snmp_root.icmpmsg_InTimestamps
+ || snmp_root.icmpmsg_OutTimestamps
+ || snmp_root.icmpmsg_InTimestampReps
+ || snmp_root.icmpmsg_OutTimestampReps
+ ))) {
+ do_icmpmsg = CONFIG_BOOLEAN_YES;
+
static RRDSET *st = NULL;
static RRDDIM *rd_InEchoReps = NULL,
*rd_OutEchoReps = NULL,
@@ -560,9 +595,9 @@ int do_proc_net_snmp(int update_every, usec_t dt) {
, NULL
, "IPv4 ICMP Messages"
, "packets/s"
- , "proc"
- , "net/snmp"
- , 2604
+ , PLUGIN_PROC_NAME
+ , PLUGIN_PROC_MODULE_NET_SNMP_NAME
+ , NETDATA_CHART_PRIO_IPV4_ICMP + 2
, update_every
, RRDSET_TYPE_LINE
);
@@ -636,15 +671,15 @@ int do_proc_net_snmp(int update_every, usec_t dt) {
// --------------------------------------------------------------------
- if(snmp_root.tcp_MaxConn != last_max_connections) {
- last_max_connections = snmp_root.tcp_MaxConn;
- rrdvar_custom_host_variable_set(localhost, tcp_max_connections_var, last_max_connections);
- }
+ // this is smart enough to update it, only when it is changed
+ rrdvar_custom_host_variable_set(localhost, tcp_max_connections_var, snmp_root.tcp_MaxConn);
// --------------------------------------------------------------------
// see http://net-snmp.sourceforge.net/docs/mibs/tcp.html
- if(do_tcp_sockets) {
+ if(do_tcp_sockets == CONFIG_BOOLEAN_YES || (do_tcp_sockets == CONFIG_BOOLEAN_AUTO && snmp_root.tcp_CurrEstab)) {
+ do_tcp_sockets = CONFIG_BOOLEAN_YES;
+
static RRDSET *st = NULL;
static RRDDIM *rd_CurrEstab = NULL;
@@ -657,9 +692,9 @@ int do_proc_net_snmp(int update_every, usec_t dt) {
, NULL
, "IPv4 TCP Connections"
, "active connections"
- , "proc"
- , "net/snmp"
- , 2501
+ , PLUGIN_PROC_NAME
+ , PLUGIN_PROC_MODULE_NET_SNMP_NAME
+ , NETDATA_CHART_PRIO_IPV4_TCP
, update_every
, RRDSET_TYPE_LINE
);
@@ -674,7 +709,9 @@ int do_proc_net_snmp(int update_every, usec_t dt) {
// --------------------------------------------------------------------
- if(do_tcp_packets) {
+ if(do_tcp_packets == CONFIG_BOOLEAN_YES || (do_tcp_packets == CONFIG_BOOLEAN_AUTO && (snmp_root.tcp_InSegs || snmp_root.tcp_OutSegs))) {
+ do_tcp_packets = CONFIG_BOOLEAN_YES;
+
static RRDSET *st = NULL;
static RRDDIM *rd_InSegs = NULL,
*rd_OutSegs = NULL;
@@ -688,9 +725,9 @@ int do_proc_net_snmp(int update_every, usec_t dt) {
, NULL
, "IPv4 TCP Packets"
, "packets/s"
- , "proc"
- , "net/snmp"
- , 2510
+ , PLUGIN_PROC_NAME
+ , PLUGIN_PROC_MODULE_NET_SNMP_NAME
+ , NETDATA_CHART_PRIO_IPV4_TCP + 4
, update_every
, RRDSET_TYPE_LINE
);
@@ -707,7 +744,9 @@ int do_proc_net_snmp(int update_every, usec_t dt) {
// --------------------------------------------------------------------
- if(do_tcp_errors) {
+ if(do_tcp_errors == CONFIG_BOOLEAN_YES || (do_tcp_errors == CONFIG_BOOLEAN_AUTO && (snmp_root.tcp_InErrs || snmp_root.tcp_InCsumErrors || snmp_root.tcp_RetransSegs))) {
+ do_tcp_errors = CONFIG_BOOLEAN_YES;
+
static RRDSET *st = NULL;
static RRDDIM *rd_InErrs = NULL,
*rd_InCsumErrors = NULL,
@@ -722,9 +761,9 @@ int do_proc_net_snmp(int update_every, usec_t dt) {
, NULL
, "IPv4 TCP Errors"
, "packets/s"
- , "proc"
- , "net/snmp"
- , 2525
+ , PLUGIN_PROC_NAME
+ , PLUGIN_PROC_MODULE_NET_SNMP_NAME
+ , NETDATA_CHART_PRIO_IPV4_TCP + 20
, update_every
, RRDSET_TYPE_LINE
);
@@ -744,7 +783,9 @@ int do_proc_net_snmp(int update_every, usec_t dt) {
// --------------------------------------------------------------------
- if(do_tcp_opens) {
+ if(do_tcp_opens == CONFIG_BOOLEAN_YES || (do_tcp_opens == CONFIG_BOOLEAN_AUTO && (snmp_root.tcp_ActiveOpens || snmp_root.tcp_PassiveOpens))) {
+ do_tcp_opens = CONFIG_BOOLEAN_YES;
+
static RRDSET *st = NULL;
static RRDDIM *rd_ActiveOpens = NULL,
*rd_PassiveOpens = NULL;
@@ -758,9 +799,9 @@ int do_proc_net_snmp(int update_every, usec_t dt) {
, NULL
, "IPv4 TCP Opens"
, "connections/s"
- , "proc"
- , "net/snmp"
- , 2502
+ , PLUGIN_PROC_NAME
+ , PLUGIN_PROC_MODULE_NET_SNMP_NAME
+ , NETDATA_CHART_PRIO_IPV4_TCP + 5
, update_every
, RRDSET_TYPE_LINE
);
@@ -778,7 +819,9 @@ int do_proc_net_snmp(int update_every, usec_t dt) {
// --------------------------------------------------------------------
- if(do_tcp_handshake) {
+ if(do_tcp_handshake == CONFIG_BOOLEAN_YES || (do_tcp_handshake == CONFIG_BOOLEAN_AUTO && (snmp_root.tcp_EstabResets || snmp_root.tcp_OutRsts || snmp_root.tcp_AttemptFails))) {
+ do_tcp_handshake = CONFIG_BOOLEAN_YES;
+
static RRDSET *st = NULL;
static RRDDIM *rd_EstabResets = NULL,
*rd_OutRsts = NULL,
@@ -794,25 +837,25 @@ int do_proc_net_snmp(int update_every, usec_t dt) {
, NULL
, "IPv4 TCP Handshake Issues"
, "events/s"
- , "proc"
- , "net/snmp"
- , 2530
+ , PLUGIN_PROC_NAME
+ , PLUGIN_PROC_MODULE_NET_SNMP_NAME
+ , NETDATA_CHART_PRIO_IPV4_TCP + 30
, update_every
, RRDSET_TYPE_LINE
);
rrdset_flag_set(st, RRDSET_FLAG_DETAIL);
- rd_EstabResets = rrddim_add(st, "EstabResets", NULL, 1, 1, RRD_ALGORITHM_INCREMENTAL);
- rd_OutRsts = rrddim_add(st, "OutRsts", NULL, 1, 1, RRD_ALGORITHM_INCREMENTAL);
- rd_AttemptFails = rrddim_add(st, "AttemptFails", NULL, 1, 1, RRD_ALGORITHM_INCREMENTAL);
- rd_TCPSynRetrans = rrddim_add(st, "TCPSynRetrans", NULL, 1, 1, RRD_ALGORITHM_INCREMENTAL);
+ rd_EstabResets = rrddim_add(st, "EstabResets", NULL, 1, 1, RRD_ALGORITHM_INCREMENTAL);
+ rd_OutRsts = rrddim_add(st, "OutRsts", NULL, 1, 1, RRD_ALGORITHM_INCREMENTAL);
+ rd_AttemptFails = rrddim_add(st, "AttemptFails", NULL, 1, 1, RRD_ALGORITHM_INCREMENTAL);
+ rd_TCPSynRetrans = rrddim_add(st, "TCPSynRetrans", "SynRetrans", 1, 1, RRD_ALGORITHM_INCREMENTAL);
}
else rrdset_next(st);
- rrddim_set_by_pointer(st, rd_EstabResets, (collected_number)snmp_root.tcp_EstabResets);
- rrddim_set_by_pointer(st, rd_OutRsts, (collected_number)snmp_root.tcp_OutRsts);
- rrddim_set_by_pointer(st, rd_AttemptFails, (collected_number)snmp_root.tcp_AttemptFails);
- rrddim_set_by_pointer(st, rd_TCPSynRetrans, tcpext_TCPSynRetrans);
+ rrddim_set_by_pointer(st, rd_EstabResets, (collected_number)snmp_root.tcp_EstabResets);
+ rrddim_set_by_pointer(st, rd_OutRsts, (collected_number)snmp_root.tcp_OutRsts);
+ rrddim_set_by_pointer(st, rd_AttemptFails, (collected_number)snmp_root.tcp_AttemptFails);
+ rrddim_set_by_pointer(st, rd_TCPSynRetrans, tcpext_TCPSynRetrans);
rrdset_done(st);
}
}
@@ -839,7 +882,9 @@ int do_proc_net_snmp(int update_every, usec_t dt) {
// --------------------------------------------------------------------
// see http://net-snmp.sourceforge.net/docs/mibs/udp.html
- if(do_udp_packets) {
+ if(do_udp_packets == CONFIG_BOOLEAN_YES || (do_udp_packets == CONFIG_BOOLEAN_AUTO && (snmp_root.udp_InDatagrams || snmp_root.udp_OutDatagrams))) {
+ do_udp_packets = CONFIG_BOOLEAN_YES;
+
static RRDSET *st = NULL;
static RRDDIM *rd_InDatagrams = NULL,
*rd_OutDatagrams = NULL;
@@ -853,9 +898,9 @@ int do_proc_net_snmp(int update_every, usec_t dt) {
, NULL
, "IPv4 UDP Packets"
, "packets/s"
- , "proc"
- , "net/snmp"
- , 2602
+ , PLUGIN_PROC_NAME
+ , PLUGIN_PROC_MODULE_NET_SNMP_NAME
+ , NETDATA_CHART_PRIO_IPV4_UDP
, update_every
, RRDSET_TYPE_LINE
);
@@ -872,7 +917,16 @@ int do_proc_net_snmp(int update_every, usec_t dt) {
// --------------------------------------------------------------------
- if(do_udp_errors) {
+ if(do_udp_errors == CONFIG_BOOLEAN_YES || (do_udp_errors == CONFIG_BOOLEAN_AUTO && (
+ snmp_root.udp_InErrors
+ || snmp_root.udp_NoPorts
+ || snmp_root.udp_RcvbufErrors
+ || snmp_root.udp_SndbufErrors
+ || snmp_root.udp_InCsumErrors
+ || snmp_root.udp_IgnoredMulti
+ ))) {
+ do_udp_errors = CONFIG_BOOLEAN_YES;
+
static RRDSET *st = NULL;
static RRDDIM *rd_RcvbufErrors = NULL,
*rd_SndbufErrors = NULL,
@@ -890,9 +944,9 @@ int do_proc_net_snmp(int update_every, usec_t dt) {
, NULL
, "IPv4 UDP Errors"
, "events/s"
- , "proc"
- , "net/snmp"
- , 2701
+ , PLUGIN_PROC_NAME
+ , PLUGIN_PROC_MODULE_NET_SNMP_NAME
+ , NETDATA_CHART_PRIO_IPV4_UDP + 10
, update_every
, RRDSET_TYPE_LINE
);
@@ -938,7 +992,18 @@ int do_proc_net_snmp(int update_every, usec_t dt) {
// --------------------------------------------------------------------
- if(do_udplite_packets) {
+ if(do_udplite_packets == CONFIG_BOOLEAN_YES || (do_udplite_packets == CONFIG_BOOLEAN_AUTO && (
+ snmp_root.udplite_InDatagrams
+ || snmp_root.udplite_OutDatagrams
+ || snmp_root.udplite_NoPorts
+ || snmp_root.udplite_InErrors
+ || snmp_root.udplite_InCsumErrors
+ || snmp_root.udplite_RcvbufErrors
+ || snmp_root.udplite_SndbufErrors
+ || snmp_root.udplite_IgnoredMulti
+ ))) {
+ do_udplite_packets = CONFIG_BOOLEAN_YES;
+
{
static RRDSET *st = NULL;
static RRDDIM *rd_InDatagrams = NULL,
@@ -953,9 +1018,9 @@ int do_proc_net_snmp(int update_every, usec_t dt) {
, NULL
, "IPv4 UDPLite Packets"
, "packets/s"
- , "proc"
- , "net/snmp"
- , 2603
+ , PLUGIN_PROC_NAME
+ , PLUGIN_PROC_MODULE_NET_SNMP_NAME
+ , NETDATA_CHART_PRIO_IPV4_UDPLITE
, update_every
, RRDSET_TYPE_LINE
);
@@ -988,9 +1053,9 @@ int do_proc_net_snmp(int update_every, usec_t dt) {
, NULL
, "IPv4 UDPLite Errors"
, "packets/s"
- , "proc"
- , "net/snmp"
- , 2604
+ , PLUGIN_PROC_NAME
+ , PLUGIN_PROC_MODULE_NET_SNMP_NAME
+ , NETDATA_CHART_PRIO_IPV4_UDPLITE + 10
, update_every
, RRDSET_TYPE_LINE);