mirror of
https://github.com/ntop/ntopng.git
synced 2026-05-03 09:20:10 +00:00
80 lines
2.9 KiB
Lua
80 lines
2.9 KiB
Lua
--
|
|
-- (C) 2014-24 - ntop.org
|
|
--
|
|
local DEFAULT_DATA_RETENTION_DAYS = 30
|
|
local DEFAULT_AGGREGATED_ASN_DATA_RETENTION_DAYS = 60
|
|
local DEFAULT_AGGREGATED_FLOWS_DATA_RETENTION_DAYS = 60
|
|
local DEFAULT_DATA_RETENTION_DAYS_KEY = "ntopng.prefs.data_retention_days"
|
|
local FLOWS_AND_ALERTS_DATA_RETENTION_DAYS_KEY =
|
|
"ntopng.prefs.flows_and_alerts_data_retention_days"
|
|
local AGGREGATED_FLOWS_DATA_RETENTION_DAYS_KEY =
|
|
"ntopng.prefs.aggregated_flows_data_retention_days"
|
|
local AGGREGATED_ASN_DATA_RETENTION_DAYS_KEY =
|
|
"ntopng.prefs.aggregated_asn_data_retention_days"
|
|
local TS_AND_STATS_DATA_RETENTION_DAYS_KEY =
|
|
"ntopng.prefs.ts_and_stats_data_retention_days"
|
|
|
|
local data_retention_utils = {}
|
|
|
|
-- ########################################################
|
|
|
|
function data_retention_utils.getDefaultRetention()
|
|
return DEFAULT_DATA_RETENTION_DAYS
|
|
end
|
|
|
|
-- ########################################################
|
|
|
|
function data_retention_utils.getAggregatedFlowsDataRetention()
|
|
return DEFAULT_AGGREGATED_FLOWS_DATA_RETENTION_DAYS
|
|
end
|
|
|
|
-- ########################################################
|
|
|
|
function data_retention_utils.getAggregatedAsnDataRetention()
|
|
return DEFAULT_AGGREGATED_ASN_DATA_RETENTION_DAYS
|
|
end
|
|
|
|
-- ########################################################
|
|
|
|
function data_retention_utils.getFlowsAndAlertsDataRetentionDays()
|
|
local data_retention = ntop.getCache(
|
|
FLOWS_AND_ALERTS_DATA_RETENTION_DAYS_KEY) or
|
|
ntop.getCache(DEFAULT_DATA_RETENTION_DAYS_KEY)
|
|
|
|
return tonumber(data_retention) or
|
|
data_retention_utils.getDefaultRetention()
|
|
end
|
|
|
|
-- ########################################################
|
|
|
|
function data_retention_utils.getAggregatedFlowsRetentionDays()
|
|
local data_retention = ntop.getCache(
|
|
AGGREGATED_FLOWS_DATA_RETENTION_DAYS_KEY)
|
|
-- aggregated data is at least one day more that non-aggregated data
|
|
return tonumber(data_retention) or
|
|
(data_retention_utils.getAggregatedFlowsDataRetention() + 1)
|
|
end
|
|
|
|
-- ########################################################
|
|
|
|
function data_retention_utils.getAggregatedAsnRetentionDays()
|
|
local data_retention = ntop.getCache(AGGREGATED_ASN_DATA_RETENTION_DAYS_KEY)
|
|
-- aggregated data is at least one day more that non-aggregated data
|
|
return tonumber(data_retention) or
|
|
(data_retention_utils.getAggregatedAsnDataRetention() + 1)
|
|
end
|
|
|
|
-- ########################################################
|
|
|
|
function data_retention_utils.getTSAndStatsDataRetentionDays()
|
|
local data_retention =
|
|
ntop.getCache(TS_AND_STATS_DATA_RETENTION_DAYS_KEY) or
|
|
ntop.getCache(DEFAULT_DATA_RETENTION_DAYS_KEY)
|
|
|
|
return tonumber(data_retention) or
|
|
data_retention_utils.getDefaultRetention()
|
|
end
|
|
|
|
-- ########################################################
|
|
|
|
return data_retention_utils
|