From 0fdb99dbc860a6f106eb09074adcb78b670c08c3 Mon Sep 17 00:00:00 2001 From: Mika Havela Date: Thu, 10 Jan 2008 13:00:07 +0000 Subject: Current status is now displayed. Apply settings doesn't work! git-svn-id: svn://svn.alpinelinux.org/acf/alpine-baselayout/trunk@528 ab2d0c66-481e-0410-8bed-d214d4d58bed --- syslog-model.lua | 54 +++++++++++++++++++++++++++++++++++++++--------------- 1 file changed, 39 insertions(+), 15 deletions(-) (limited to 'syslog-model.lua') diff --git a/syslog-model.lua b/syslog-model.lua index ac37572..2ec8b3b 100644 --- a/syslog-model.lua +++ b/syslog-model.lua @@ -1,7 +1,7 @@ module(..., package.seeall) ---require("pidof") -require("split") +require("fs") +require("posix") local function get_version() local cmd = "/sbin/apk_version -v -s busybox | cut -d ' ' -f 1" @@ -18,9 +18,7 @@ local is_running = function( process ) local cmdoutput = string.gsub(cmd:read("*a"), "%s", "") cmd:close() if (cmdoutput ~= "") then - statusreport = "Running" - else - statusreport = "Stopped" + statusreport = "Yes" end return statusreport end @@ -59,6 +57,27 @@ local function readopts(optname) return opts end +local function file_info ( path ) + local filedetails = posix.stat(path) + filedetails["owner"]=rawget((posix.getpasswd(filedetails["uid"])),"name") + filedetails["group"]=rawget((posix.getgroup(filedetails["gid"])),"name") + filedetails["atimelong"]=os.date("%c", filedetails["atime"]) + filedetails["mtimelong"]=os.date("%c", filedetails["mtime"]) + filedetails["path"]=path + filedetails["name"]=basename(path) + + if ( filedetails["size"] > 1073741824 ) then + filedetails["size"]=((filedetails["size"]/1073741824) - (filedetails["size"]/1073741824%0.1)) .. "G" + elseif ( filedetails["size"] > 1048576 ) then + filedetails["size"]=((filedetails["size"]/1048576) - (filedetails["size"]/1048576%0.1)) .. "M" + elseif ( filedetails["size"] > 1024 ) then + filedetails["size"]=((filedetails["size"]/1024) - (filedetails["size"]/1024%0.1)) .. "k" + else + filedetails["size"]=filedetails["size"] + end + return filedetails + +end -- ################################################################################ -- EXPERIMENTAL LOCAL FUNCTIONS @@ -69,25 +88,30 @@ end function getstatus() local opts = readopts("SYSLOGD_OPTS") local status = {} - local version = get_version() - status.version = version - local isrunning = is_running("syslogd") - status.status = isrunning + status.version = get_version() + status.enabled = is_running("syslogd") status.logfile = opts["-O"] or "/var/log/messages" status.remote = opts["-R"] return status end +function get_filedetails() + local filedetails = {} + local path = "/etc/conf.d/syslog" + filedetails.details = file_info(path) + filedetails.content = fs.read_file(path) + return filedetails +end function getconfig() local opts = readopts("SYSLOGD_OPTS") local config = {} config.debug = opts - config.logfile = opts["-O"] or "" - config.loglevel = opts["-l"] or "" - config.smallog = opts["-S"] --FIXME: DOESNT WORK!!! - config.maxsize = opts["-s"] or "" - config.logrotate = opts["-b"] or "" - config.remote = opts["-R"] or "" + config.logfile = cfe({value=opts["-O"], type="text", option="", errtxt="" ,label="Log to given file", }) + config.loglevel = cfe({value=opts["-l"], type="radio", option="", errtxt="", helptxt="(1=Quiet, 5=Noisy, Default=Not specifyed any loglevel in the config)", label="Set local log level", }) + config.smallog = cfe({value=opts["-S"], type="select", option="", errtxt="", label="Smaller logging output", }) + config.maxsize = cfe({value=opts["-s"], type="text", option="", errtxt="", label="Max size (KB) before rotate", }) + config.logrotate = cfe({value=opts["-b"], type="text", option="", errtxt="", label="Number of rotated logs to keep", }) + config.remote = cfe({value=opts["-R"], type="text", option="", errtxt="", label="Log to IP or hostname on PORT", }) return config end -- cgit v1.2.3