module(..., package.seeall) require("procps") local processname = "tinydns" local configfile = "???" -- ################################################################################ -- LOCAL FUNCTIONS local function get_version() local cmd_output_result, cmd_output_error local cmd = "/sbin/apk_version -vs " .. processname .." 2>/dev/null" local f = io.popen( cmd ) local cmdresult = f:read("*l") if (cmdresult) and (#cmdresult > 0) then cmd_output_result = string.match(cmdresult,"^%S*") or "Unknown" else cmd_output_error = "Program not installed" end f:close() return cmd_output_result,cmd_output_error end -- ################################################################################ -- PUBLIC FUNCTIONS function getstatus() local status = {} local version,versionerrtxt = get_version() status.version = cfe({ name = "version", label="Program version", value=version, errtxt=versionerrtxt, }) status.status = cfe({ name="status", label="Program status", value=procps.pidof(processname), }) return status end