-- -- (C) 2017 - ntop.org -- dirs = ntop.getDirs() package.path = dirs.installdir .. "/scripts/lua/modules/?.lua;" .. package.path if(ntop.isPro()) then package.path = dirs.installdir .. "/pro/scripts/lua/modules/?.lua;" .. package.path require "snmp_utils" shaper_utils = require "shaper_utils" end require "lua_utils" require "graph_utils" require "alert_utils" local host_pools_utils = require "host_pools_utils" local pool_id = _GET["pool"] local page = _GET["page"] if (not ntop.isPro()) then return end interface.select(ifname) local ifstats = interface.getStats() local ifId = ifstats.id local pool_name = host_pools_utils.getPoolName(ifId, pool_id) sendHTTPHeader('text/html; charset=iso-8859-1') ntop.dumpFile(dirs.installdir .. "/httpdocs/inc/header.inc") dofile(dirs.installdir .. "/scripts/lua/inc/menu.lua") local base_url = ntop.getHttpPrefix()..'/lua/pool_details.lua' local page_params = {} page_params["ifid"] = ifId page_params["pool"] = pool_id page_params["page"] = page if(pool_id == nil) then print("
Pool parameter is missing (internal error ?)
") return end print [[
]] local pools_stats = interface.getHostPoolsStats() local pool_stats = pools_stats and pools_stats[tonumber(pool_id)] if ntop.isPro() and ifstats.inline and (page == "quotas") and (pool_stats ~= nil) then local ndpi_stats = pool_stats.ndpi local category_stats = pool_stats.ndpi_categories local quota_and_protos = shaper_utils.getPoolProtoShapers(ifId, pool_id) -- Empty check local empty = true for _, proto in pairs(quota_and_protos) do if ((tonumber(proto.traffic_quota) > 0) or (tonumber(proto.time_quota) > 0)) then -- at least a quota is set empty = false break end end if empty then print("
"..i18n("shaping.no_quota_data").. ". Create new quotas here.
") else print[[
]] print(i18n("protocol")) print[[ ]] print(i18n("shaping.daily_traffic")) print[[ ]] print(i18n("shaping.daily_time")) print[[
]] end elseif page == "historical" then local rrdbase = host_pools_utils.getRRDBase(ifId, pool_id) if(not ntop.exists(rrdbase.."/bytes.rrd")) then print("
No available data for Host Pool '"..pool_name.."'. ") print('Host Pool timeseries can be enabled from the Preferences. Few minutes are necessary to see the first data points.
') else local rrdfile if(not isEmptyString(_GET["rrd_file"])) then rrdfile = _GET["rrd_file"] else rrdfile = "bytes.rrd" end local host_url = getPageUrl(base_url, page_params) drawRRD(ifId, 'pool:'..pool_id, rrdfile, _GET["zoom"], host_url, 1, _GET["epoch"], nil, makeTopStatsScriptsArray()) end end dofile(dirs.installdir .. "/scripts/lua/inc/footer.lua")