blob: e0e2cf3bc5a4ebf3793d7a6f0066aa22b890e8ab (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
|
-- acf model for displaying logfiles recusivly
module (..., package.seeall)
require("fs")
require("date")
-- ###############################################################
-- Private functions
local function querycmd ( cmdline )
local cmd = io.popen( cmdline )
local cmd_result = cmd:read("*a") or "unknown"
cmd:close()
return cmd_result
end
local function diskfree ( media )
if not (media) then media = "" end
local cmd = io.popen( "df -h " .. media )
local cmd_result = cmd:read("*a") or "unknown"
cmd:close()
return cmd_result
end
-- ###############################################################
-- Public functions
get_system = function (self)
local system = {}
system.uptime = querycmd("/usr/bin/uptime")
system.date = querycmd("/bin/date")
system.timezone = date.what_tz()
system.uname = querycmd("/bin/uname -a")
system.memory = querycmd("/usr/bin/free")
return system
end
get_storage = function (self)
local storage = {}
storage.floppycapacity = diskfree("/media/floppy")
storage.hdcapacity = diskfree()
storage.partitions = fs.read_file("/proc/partitions")
return storage
end
get_network = function (self)
local network = {}
network.interfaces = querycmd("/sbin/ifconfig")
network.routes = querycmd("/sbin/route")
return network
end
get_modules = function (self)
local modules = {}
modules.list = querycmd("/sbin/lsmod")
return modules
end
get_proc = function (self)
local proc = {}
proc.processor = fs.read_file("/proc/cpuinfo")
proc.memory = fs.read_file("/proc/meminfo")
return proc
end
|