-- -- (C) 2014-26 - 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_VS_REPORTS_DATA_RETENTION_DAYS = 30 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 VS_REPORT_RETENTION_DAYS_KEY = "ntopng.prefs.vs_reports_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.getAggregatedVSReportRetention() return DEFAULT_VS_REPORTS_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.getVSReportRetentionDays() local data_retention = ntop.getCache(VS_REPORT_RETENTION_DAYS_KEY) return tonumber(data_retention) or (data_retention_utils.getAggregatedVSReportRetention()) 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