mirror of
https://github.com/ntop/ntopng.git
synced 2026-05-02 00:40:10 +00:00
Improve smart recording checks
This commit is contained in:
parent
50fa9de3d5
commit
e5bc59bf66
1 changed files with 37 additions and 29 deletions
|
|
@ -14,9 +14,11 @@ if((not isAdministrator()) or (not recording_utils.isAvailable())) then
|
|||
return
|
||||
end
|
||||
|
||||
local record_traffic = false
|
||||
local smart_record_traffic = false
|
||||
|
||||
-- POST check
|
||||
if(_SERVER["REQUEST_METHOD"] == "POST") then
|
||||
local record_traffic = false
|
||||
if not isEmptyString(_POST["record_traffic"]) then
|
||||
record_traffic = true
|
||||
ntop.setCache('ntopng.prefs.ifid_'..master_ifid..'.traffic_recording.enabled', "1")
|
||||
|
|
@ -36,22 +38,23 @@ if(_SERVER["REQUEST_METHOD"] == "POST") then
|
|||
end
|
||||
ntop.setCache('ntopng.prefs.ifid_'..master_ifid..'.traffic_recording.disk_space', tostring(disk_space))
|
||||
|
||||
local smart_record_traffic = false
|
||||
if not isEmptyString(_POST["smart_record_traffic"]) then
|
||||
smart_record_traffic = true
|
||||
ntop.setCache('ntopng.prefs.ifid_'..master_ifid..'.smart_traffic_recording.instance', recording_utils.getN2diskInstanceName(master_ifid))
|
||||
ntop.setCache('ntopng.prefs.ifid_'..master_ifid..'.smart_traffic_recording.enabled', "1")
|
||||
else
|
||||
ntop.delCache('ntopng.prefs.ifid_'..master_ifid..'.smart_traffic_recording.enabled')
|
||||
ntop.delCache('ntopng.prefs.ifid_'..master_ifid..'.smart_traffic_recording.instance')
|
||||
end
|
||||
interface.updateSmartRecording()
|
||||
if ntop.isEnterpriseXL() then
|
||||
if not isEmptyString(_POST["smart_record_traffic"]) then
|
||||
smart_record_traffic = true
|
||||
ntop.setCache('ntopng.prefs.ifid_'..master_ifid..'.smart_traffic_recording.instance', recording_utils.getN2diskInstanceName(master_ifid))
|
||||
ntop.setCache('ntopng.prefs.ifid_'..master_ifid..'.smart_traffic_recording.enabled', "1")
|
||||
else
|
||||
ntop.delCache('ntopng.prefs.ifid_'..master_ifid..'.smart_traffic_recording.enabled')
|
||||
ntop.delCache('ntopng.prefs.ifid_'..master_ifid..'.smart_traffic_recording.instance')
|
||||
end
|
||||
interface.updateSmartRecording()
|
||||
|
||||
local smart_disk_space = recording_utils.default_disk_space
|
||||
if not isEmptyString(_POST["smart_disk_space"]) then
|
||||
smart_disk_space = tonumber(_POST["smart_disk_space"])*1024
|
||||
local smart_disk_space = recording_utils.default_disk_space
|
||||
if not isEmptyString(_POST["smart_disk_space"]) then
|
||||
smart_disk_space = tonumber(_POST["smart_disk_space"])*1024
|
||||
end
|
||||
ntop.setCache('ntopng.prefs.ifid_'..master_ifid..'.smart_traffic_recording.disk_space', tostring(smart_disk_space))
|
||||
end
|
||||
ntop.setCache('ntopng.prefs.ifid_'..master_ifid..'.smart_traffic_recording.disk_space', tostring(smart_disk_space))
|
||||
|
||||
if recording_utils.isSupportedZMQInterface(master_ifid) then
|
||||
local ext_ifname
|
||||
|
|
@ -73,7 +76,7 @@ if(_SERVER["REQUEST_METHOD"] == "POST") then
|
|||
local config = {}
|
||||
config.max_disk_space = disk_space
|
||||
config.bpf_filter = bpf_filter
|
||||
if smart_record_traffic then
|
||||
if ntop.isEnterpriseXL() and smart_record_traffic then
|
||||
config.enable_smart_recording = true
|
||||
config.max_smart_disk_space = smart_disk_space
|
||||
end
|
||||
|
|
@ -89,34 +92,39 @@ if(_SERVER["REQUEST_METHOD"] == "POST") then
|
|||
end
|
||||
end
|
||||
|
||||
local record_traffic = false
|
||||
local smart_record_traffic = false
|
||||
if ntop.getCache('ntopng.prefs.ifid_'..master_ifid..'.traffic_recording.enabled') == "1" then
|
||||
record_traffic = true
|
||||
if ntop.getCache('ntopng.prefs.ifid_'..master_ifid..'.smart_traffic_recording.enabled') == "1" then
|
||||
if ntop.isEnterpriseXL() and ntop.getCache('ntopng.prefs.ifid_'..master_ifid..'.smart_traffic_recording.enabled') == "1" then
|
||||
smart_record_traffic = true
|
||||
end
|
||||
end
|
||||
|
||||
local bpf_filter = ntop.getCache('ntopng.prefs.ifid_'..master_ifid..'.traffic_recording.bpf_filter')
|
||||
|
||||
local disk_space = ntop.getCache('ntopng.prefs.ifid_'..master_ifid..'.traffic_recording.disk_space')
|
||||
local smart_disk_space = ntop.getCache('ntopng.prefs.ifid_'..master_ifid..'.smart_traffic_recording.disk_space')
|
||||
|
||||
local storage_info = recording_utils.storageInfo(master_ifid)
|
||||
local max_space = recording_utils.recommendedSpace(master_ifid, storage_info)
|
||||
|
||||
-- Compute suggested max disk space
|
||||
max_space = math.floor(max_space/(1024*1024*1024))*1024
|
||||
if isEmptyString(disk_space) and isEmptyString(smart_disk_space) then
|
||||
disk_space = max_space/2
|
||||
smart_disk_space = max_space/2
|
||||
elseif isEmptyString(disk_space) then
|
||||
disk_space = ternary(max_space > tonumber(smart_disk_space), max_space - tonumber(smart_disk_space), 0)
|
||||
elseif isEmptyString(smart_disk_space) then
|
||||
smart_disk_space = ternary(max_space > tonumber(disk_space), max_space - tonumber(disk_space), 0)
|
||||
|
||||
if ntop.isEnterpriseXL() then
|
||||
-- Compute recommended values for storage and smart storage
|
||||
if isEmptyString(disk_space) and isEmptyString(smart_disk_space) then
|
||||
disk_space = max_space/2
|
||||
smart_disk_space = max_space/2
|
||||
elseif isEmptyString(disk_space) then
|
||||
disk_space = ternary(max_space > tonumber(smart_disk_space), max_space - tonumber(smart_disk_space), 0)
|
||||
elseif isEmptyString(smart_disk_space) then
|
||||
smart_disk_space = ternary(max_space > tonumber(disk_space), max_space - tonumber(disk_space), 0)
|
||||
end
|
||||
smart_disk_space = tostring(math.floor(tonumber(smart_disk_space)/1024))
|
||||
else
|
||||
-- Compute recommended values for storage only
|
||||
disk_space = max_space
|
||||
disk_space = tostring(math.floor(tonumber(disk_space)/1024))
|
||||
end
|
||||
disk_space = tostring(math.floor(tonumber(disk_space)/1024))
|
||||
smart_disk_space = tostring(math.floor(tonumber(smart_disk_space)/1024))
|
||||
|
||||
print("<h2>"..i18n("traffic_recording.traffic_recording_settings").."</h2><br>")
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue