diff options
author | Mika Havela <mika.havela@gmail.com> | 2009-09-17 16:14:42 +0200 |
---|---|---|
committer | Mika Havela <mika.havela@gmail.com> | 2009-09-17 16:14:42 +0200 |
commit | 388baf2f4024180123d194975c22a8537b154a34 (patch) | |
tree | 0a085e5cafa195d8484031432a5dff65ffef1ce9 | |
parent | d70f37d352c260200b0d7b710c6b33fd48868bd1 (diff) | |
parent | 9fe058d4b6aaedf085b72322b4d54b48fb6d5df5 (diff) | |
download | acf-weblog-388baf2f4024180123d194975c22a8537b154a34.tar.bz2 acf-weblog-388baf2f4024180123d194975c22a8537b154a34.tar.xz |
Merge branch 'master' of ssh://mhavela@git.alpinelinux.org/gitroot/acf-weblog
-rw-r--r-- | Makefile | 2 | ||||
-rw-r--r-- | weblog-model.lua | 18 |
2 files changed, 15 insertions, 5 deletions
@@ -1,6 +1,6 @@ APP_NAME=weblog PACKAGE=acf-$(APP_NAME) -VERSION=0.4.0 +VERSION=0.4.2 APP_DIST=\ weblog* \ diff --git a/weblog-model.lua b/weblog-model.lua index 1d67739..ec4929e 100644 --- a/weblog-model.lua +++ b/weblog-model.lua @@ -548,7 +548,7 @@ local parsedglog = function(logdata) local logentry = {logdatetime=words[1], clientuserid=words[2], clientip=words[3], URL=words[4], reason=words[5], method=words[6], bytes=words[7], shortreason=words[9]} if logentry.reason ~= "" then if logentry.shortreason == "" then logentry.shortreason = logentry.reason end - logentry.score = string.match(logentry.reason, "^.*: ([0-9]*) ") + logentry.score = string.match(logentry.reason, "^.*: ([0-9]+) ") logentry.logdatetime = string.gsub(logentry.logdatetime, "%.", "-") logentries[#logentries+1] = logentry @@ -604,11 +604,21 @@ local getlogfile = function(source, cookiesfile, logfile) local filecontent if source.method == "http" or source.method == "https" then local cmd = "wget -O - --no-check-certificate --load-cookies "..cookiesfile.." --post-data 'name="..logfile.."' '"..source.method.."://"..source.source.."/cgi-bin/acf/alpine-baselayout/logfiles/download' 2>/dev/null" + if string.find(logfile, "%.gz$") then + cmd = cmd.." | gunzip -c" + end local f = io.popen(cmd) filecontent = f:read("*a") f:close() elseif source.method == "local" then - filecontent = fs.read_file(logfile) + if string.find(logfile, "%.gz$") then + local cmd = "gunzip -c "..logfile + local f = io.popen(cmd) + filecontent = f:read("*a") + f:close() + else + filecontent = fs.read_file(logfile) + end end return filecontent end @@ -825,7 +835,7 @@ function importlogs() if connecttosource(source, cookiesfile) then local files = getlogcandidates(source, cookiesfile) for j,file in ipairs(files) do - if string.match(file, "dansguardian/access%.log%.") then + if string.match(file, "dansguardian/access%.log[%.%-]") then count = count + 1 logme("Processing " .. file ) logme("Getting " .. file ) @@ -834,7 +844,7 @@ function importlogs() importdglog(logentries, source.sourcename) logme("Deleting " .. file ) deletelogfile(source, cookiesfile, file) - elseif string.match(file, "squid/access%.log%.") then + elseif string.match(file, "squid/access%.log[%.%-]") then count = count + 1 logme("Processing " .. file ) logme("Getting " .. file ) |