summaryrefslogtreecommitdiffstats
path: root/weblog-model.lua
diff options
context:
space:
mode:
authorTed Trask <ttrask01@yahoo.com>2009-08-05 13:54:46 +0000
committerTed Trask <ttrask01@yahoo.com>2009-08-05 13:54:46 +0000
commit882fa9286649dfd9544b799ee6ea724a47ce14ec (patch)
treedd1d153818c235020d5b4590f8b93ce387e11331 /weblog-model.lua
parent306ce92df530f8ecb193976b475a065592dafe9d (diff)
downloadacf-weblog-882fa9286649dfd9544b799ee6ea724a47ce14ec.tar.bz2
acf-weblog-882fa9286649dfd9544b799ee6ea724a47ce14ec.tar.xz
Added "local" source to get logs from local filesystem.
Diffstat (limited to 'weblog-model.lua')
-rw-r--r--weblog-model.lua21
1 files changed, 18 insertions, 3 deletions
diff --git a/weblog-model.lua b/weblog-model.lua
index 1311d1a..c5f6f5b 100644
--- a/weblog-model.lua
+++ b/weblog-model.lua
@@ -563,6 +563,8 @@ local connecttosource = function(source, cookiesfile)
else
success = true
end
+ elseif source.method == "local" then
+ success = true
end
return success
end
@@ -577,6 +579,8 @@ local getlogcandidates = function(source, cookiesfile)
for file in string.gmatch(resultpage, "download%?name=([^\"]+)") do
candidates[#candidates+1] = file
end
+ elseif source.method == "local" then
+ candidates = fs.find_files_as_array(nil, source.source)
end
return candidates
end
@@ -588,6 +592,8 @@ local getlogfile = function(source, cookiesfile, logfile)
local f = io.popen(cmd)
filecontent = f:read("*a")
f:close()
+ elseif source.method == "local" then
+ filecontent = fs.read_file(logfile)
end
return filecontent
end
@@ -597,6 +603,8 @@ local deletelogfile = function(source, cookiesfile, logfile)
local cmd = "wget -O - --no-check-certificate --load-cookies "..cookiesfile.." --post-data 'name="..logfile.."' '"..source.method.."://"..source.source.."/cgi-bin/acf/alpine-baselayout/logfiles/delete' 2>/dev/null"
local f = io.popen(cmd)
f:close()
+ elseif source.method == "local" then
+ os.remove(logfile)
end
end
@@ -647,7 +655,12 @@ end
local validatesource = function(sourcedata)
local success = modelfunctions.validateselect(sourcedata.value.method)
- for i,name in ipairs({"sourcename", "userid", "passwd", "source"}) do
+ local test = {"sourcename", "source"}
+ if sourcedata.value.method.value ~= "local" then
+ test[#test+1] = "userid"
+ test[#test+1] = "passwd"
+ end
+ for i,name in ipairs(test) do
if sourcedata.value[name].value == "" then
sourcedata.value[name].errtxt = "Cannot be empty"
success = false
@@ -683,10 +696,10 @@ end
function getnewsource()
local source = {}
source.sourcename = cfe({ label="Source Name" })
- source.method = cfe({ type="select", value="https", label="Method", option={"http", "https"} })
+ source.method = cfe({ type="select", value="local", label="Method", option={"http", "https", "local"} })
source.userid = cfe({ label="UserID" })
source.passwd = cfe({ label="Password" })
- source.source = cfe({ label="Source Address" })
+ source.source = cfe({ value="/var/log", label="Source Location / Address" })
source.tzislocal = cfe({ type="boolean", value=false, label="Using local timezone" })
source.enabled = cfe({ type="boolean", value=false, label="Enabled" })
return cfe({ type="group", value=source, label="Source" })
@@ -700,6 +713,8 @@ function createsource(sourcedata)
for name,val in pairs(sourcedata.value) do
source[name] = val.value
end
+ -- remove spaces from sourcename
+ source.sourcename = string.gsub(source.sourcename, "%s+$", "")
local res, err = pcall(function()
databaseconnect(DatabaseUser)