diff --git a/scripts/locales/en.lua b/scripts/locales/en.lua
index acdb3a3651..24b6104060 100644
--- a/scripts/locales/en.lua
+++ b/scripts/locales/en.lua
@@ -2848,9 +2848,9 @@ local lang = {
["traffic_profiles"] = "Traffic Profiles",
},
["traffic_recording"] = {
+ ["continuous_recording"] = "Continuous Traffic Recording",
["disk_space"] = "Max Disk Space",
["disk_space_note"] = "Maximum disk space used for recorded traffic on disk.",
- ["enable_recording"] = "Enable Continuous Traffic Recording",
["failure"] = "Failure",
["logs"] = "Traffic Recording Logs",
["not_granted"] = "Request not granted",
diff --git a/scripts/lua/if_stats.lua b/scripts/lua/if_stats.lua
index 4cb699ce8e..732b4103a8 100644
--- a/scripts/lua/if_stats.lua
+++ b/scripts/lua/if_stats.lua
@@ -1175,7 +1175,7 @@ elseif(page == "traffic_recording") then
| ]] print(i18n("traffic_recording.traffic_recording")) print [[ |
- ]] print(i18n("traffic_recording.enable_recording")) print [[
+ ]] print(i18n("traffic_recording.continuous_recording")) print [[
|
@@ -1194,11 +1194,10 @@ elseif(page == "traffic_recording") then
print [[
| ]] print(i18n("traffic_recording.storage_utilization")) print [[ |
- ]] print(tostring(math.floor(storage_info.used/1024))) print [[GB/]] print(tostring(math.floor(storage_info.total/1024))) print [[GB |
- ]] print(storage_info.used_perc) print [[
+ ]] print(tostring(math.floor(storage_info.used/1024))) print [[ GB / ]] print(tostring(math.floor(storage_info.total/1024))) print [[ GB (]] print(storage_info.used_perc) print [[)
|
]]
diff --git a/scripts/lua/modules/lua_utils.lua b/scripts/lua/modules/lua_utils.lua
index d828d4e774..4a51e59f91 100644
--- a/scripts/lua/modules/lua_utils.lua
+++ b/scripts/lua/modules/lua_utils.lua
@@ -742,7 +742,10 @@ function hasNindexSupport()
if prefs == nil then
prefs = ntop.getPrefs()
end
- return prefs.is_nindex_enabled
+ local rc = prefs.is_nindex_enabled
+
+ if(rc == nil) then rc = false end
+ return rc
end
--for _key, _value in pairsByKeys(vals, rev) do
diff --git a/scripts/lua/modules/recording_utils.lua b/scripts/lua/modules/recording_utils.lua
index b14219fd60..cbadc90f15 100644
--- a/scripts/lua/modules/recording_utils.lua
+++ b/scripts/lua/modules/recording_utils.lua
@@ -11,6 +11,7 @@ prefs = ntop.getPrefs()
local n2disk_ctl = "/usr/local/bin/n2diskctl"
local ntopng_config_tool = "/usr/bin/ntopng-utils-manage-config"
local n2disk_ctl_cmd = "sudo "..n2disk_ctl
+local extraction_queue = "ntopng.traffic_recording.extraction_queue"
local recording_utils = {}
@@ -317,6 +318,41 @@ function recording_utils.set_license(key)
os.execute(n2disk_ctl_cmd.." set-license "..key)
end
+-- Schedule an extraction
+-- Note: 'params' should contain 'time_from', 'time_to', 'filter'
+-- 'time_*' format: "2018-10-15 11:00:00"
+-- 'filter' format: BPF
+function recording_utils.schedule_extraction(ifid, params)
+ if params.time_from == nil or params.time_to == nil then
+ return nil
+ end
+ if params.filter == nil then
+ params.filter = ""
+ end
+
+ local id = os.time() -- TODO
+
+ local job = {
+ id = id,
+ time = os.time(),
+ status = 'waiting',
+ ifid = ifid,
+ time_from = params.time_from,
+ time_to = params.time_to,
+ filter = params.filer,
+ }
+
+ ntop.rpushCache(extraction_queue, json.encode(job))
+
+ local job_info = { id = id }
+
+ -- Scheduler:
+ -- local job_json = ntop.lpopCache(extraction_queue)
+ -- local job = json.decode(job_json)
+
+ return job_info
+end
+
-- #################################
return recording_utils
diff --git a/scripts/lua/traffic_recording_status.lua b/scripts/lua/traffic_recording_status.lua
index 360a048855..17c276ebb0 100644
--- a/scripts/lua/traffic_recording_status.lua
+++ b/scripts/lua/traffic_recording_status.lua
@@ -43,7 +43,7 @@ if recording_utils.isAvailable then
print("| "..i18n("traffic_recording.storage_dir").." | "..recording_utils.getPcapPath(ifstats.id).." |
\n")
- print("| "..i18n("traffic_recording.storage_utilization").." | "..tostring(math.floor(storage_info.used/1024)).."GB / "..tostring(math.floor(storage_info.total/1024)).."GB ("..storage_info.used_perc..") |
\n")
+ print("| "..i18n("traffic_recording.storage_utilization").." | "..tostring(math.floor(storage_info.used/1024)).." GB / "..tostring(math.floor(storage_info.total/1024)).." GB ("..storage_info.used_perc..") |
\n")
print("| "..i18n("about.last_log").." | \n")
|
|---|