diff options
author | Liangbin Lian <jjm2473@gmail.com> | 2023-10-26 19:48:49 +0800 |
---|---|---|
committer | Liangbin Lian <jjm2473@gmail.com> | 2023-10-26 20:01:44 +0800 |
commit | 0fbbed4a84fb49c968e3ad8a5b76bbf332f42f5c (patch) | |
tree | 9f0de9442a331f7e8f0ce85f9902a7612d9b30cc /applications/luci-app-dockerman | |
parent | 25dd8934f18a6cebfca1adb8a0d4b5d0bed73145 (diff) |
luci-app-dockerman: fix stats page always blank
Signed-off-by: Liangbin Lian <jjm2473@gmail.com>
Diffstat (limited to 'applications/luci-app-dockerman')
-rw-r--r-- | applications/luci-app-dockerman/luasrc/model/cbi/dockerman/container.lua | 37 |
1 files changed, 21 insertions, 16 deletions
diff --git a/applications/luci-app-dockerman/luasrc/model/cbi/dockerman/container.lua b/applications/luci-app-dockerman/luasrc/model/cbi/dockerman/container.lua index f8329ba703..5caad4f93f 100644 --- a/applications/luci-app-dockerman/luasrc/model/cbi/dockerman/container.lua +++ b/applications/luci-app-dockerman/luasrc/model/cbi/dockerman/container.lua @@ -752,35 +752,40 @@ elseif action == "stats" then local response = dk.containers:top({id = container_id, query = {ps_args="-aux"}}) local container_top - if response.code == 200 then - container_top=response.body - else - response = dk.containers:top({id = container_id}) + if response.code ~= 409 then + if response.code ~= 200 then + response = dk.containers:top({id = container_id}) + end + + if response.code ~= 200 then + response = dk.containers:top({id = container_id, query = {ps_args="-ww"}}) + end + if response.code == 200 then - container_top=response.body + container_top = response.body end - end - if type(container_top) == "table" then - s = m:section(SimpleSection) - s.container_id = container_id - s.template = "dockerman/container_stats" - table_stats = { - cpu={ + local table_stats = { + cpu = { key=translate("CPU Usage"), value='-' }, - memory={ + memory = { key=translate("Memory Usage"), value='-' } } - - container_top = response.body s = m:section(Table, table_stats, translate("Stats")) s:option(DummyValue, "key", translate("Stats")).width="33%" s:option(DummyValue, "value") - top_section = m:section(Table, container_top.Processes, translate("TOP")) + + s = m:section(SimpleSection) + s.container_id = container_id + s.template = "dockerman/container_stats" + end + + if type(container_top) == "table" then + local top_section = m:section(Table, container_top.Processes, translate("TOP")) for i, v in ipairs(container_top.Titles) do top_section:option(DummyValue, i, translate(v)) end |