Skip to content

Commit c375e5d

Browse files
committed
Added snmp exporter polling (#9891)
1 parent f9a3697 commit c375e5d

File tree

6 files changed

+33
-1
lines changed

6 files changed

+33
-1
lines changed

scripts/locales/en.lua

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7935,6 +7935,8 @@ local lang = {
79357935
["toggle_snmp_excluded_from_usage_title"] = "Exclude New Interfaces from SNMP Usage",
79367936
["toggle_snmp_polling_description"] = "Toggle the polling of SNMP devices.",
79377937
["toggle_snmp_polling_title"] = "SNMP Polling",
7938+
["snmp_devices_exporters_rrds_resolution_title"] = "Flow Exporters Polled by SNMP",
7939+
["snmp_devices_exporters_rrds_resolution_description"] = "Change the timeseries resolution of the SNMP devices that are also Exporters (have a faster pool, to have more accurate data or standard pool). Consider that in case of many Exporters, higher resolution could cause performance problems.",
79387940
["toggle_snmp_port_admin_status_description"] = "Toggle interface admin status. Toggle is immediate but actual status shown is refreshed during the next poll.",
79397941
["toggle_snmp_port_admin_status_title"] = "Interface Admin Status",
79407942
["toggle_snmp_port_qos_mib_polling_description"] = "Toggle the QoS MIB Polling of a device interface.",

scripts/lua/admin/prefs.lua

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2007,9 +2007,18 @@ if auth.has_capability(auth.capabilities.preferences) then
20072007
field = "toggle_snmp_rrds",
20082008
default = "0",
20092009
pref = "snmp_devices_rrd_creation",
2010-
disabled = disabled
2010+
disabled = disabled,
2011+
to_switch = { "row_snmp_devices_exporters_rrd" }
20112012
})
20122013

2014+
local resolutions_labels = { i18n('disabled'), "1m", "5m" }
2015+
local resolutions_values = { "0", "60", "300" }
2016+
2017+
multipleTableButtonPrefs(subpage_active.entries["snmp_devices_exporters_rrds_resolution"].title,
2018+
subpage_active.entries["snmp_devices_exporters_rrds_resolution"].description, resolutions_labels,
2019+
resolutions_values, "60", "primary", "snmp_devices_exporters_rrd", "ntopng.prefs.snmp_devices_exporters_rrd",
2020+
nil, nil, nil, nil, areSnmpTimeseriesEnabled())
2021+
20132022
prefsToggleButton(subpage_active, {
20142023
field = "toggle_snmp_polling",
20152024
default = "0",

scripts/lua/modules/check_redis_prefs.lua

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -144,6 +144,19 @@ end
144144

145145
-- ###########################################
146146

147+
function areSNMPExporterTimeseriesDisabled()
148+
return (ntop.getPref("ntopng.prefs.snmp_devices_exporters_rrd") == "0")
149+
end
150+
151+
-- ###########################################
152+
153+
function highSNMPExporterTimeseriesResolution()
154+
local resolution = ntop.getPref("ntopng.prefs.snmp_devices_exporters_rrd")
155+
return (resolution == "60" or isEmptyString(resolution))
156+
end
157+
158+
-- ###########################################
159+
147160
function highExporterTimeseriesResolution()
148161
return (ntop.getPref("ntopng.prefs.exporters_ts_resolution") == "60")
149162
end

scripts/lua/modules/http_lint.lua

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2542,6 +2542,7 @@ local known_parameters = {
25422542
["toggle_date_type"] = validateSingleWord,
25432543

25442544
["exporters_ts_resolution"] = validateNumber,
2545+
["snmp_devices_exporters_rrd"] = validateNumber,
25452546

25462547
-- Other
25472548
["send_test_email"] = validateEmpty,

scripts/lua/modules/prefs_menu.lua

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -548,6 +548,10 @@ local menu_subpages = {{
548548
title = i18n("prefs.toggle_snmp_rrds_title"),
549549
description = i18n("prefs.toggle_snmp_rrds_description")
550550
},
551+
snmp_devices_exporters_rrds_resolution = {
552+
title = i18n("prefs.snmp_devices_exporters_rrds_resolution_title"),
553+
description = i18n("prefs.snmp_devices_exporters_rrds_resolution_description")
554+
},
551555
toggle_snmp_polling = {
552556
title = i18n("prefs.toggle_snmp_polling_title"),
553557
description = i18n("prefs.toggle_snmp_polling_description")

scripts/lua/modules/timeseries_info.lua

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3231,6 +3231,9 @@ end
32313231
-- #################################
32323232

32333233
local function choose_traffic_serie(tags, timeseries)
3234+
if areSNMPExporterTimeseriesDisabled() then
3235+
return timeseries
3236+
end
32343237
local tot = 0
32353238
local tot_serie = ts_utils.queryTotal("snmp_if:traffic_min", tags.epoch_begin, tags.epoch_end, tags)
32363239
for _, value in pairs(tot_serie or {}) do

0 commit comments

Comments
 (0)