% local form, viewlibrary, page_info = ...
require("viewfunctions")
%>
<% if form.value.result then %>
<%= html.html_escape(form.value.result.label) %>
<% require("html") %>
<%= html.cfe_unpack(form.value.result.value) %>
<% end %>
<%= html.html_escape(form.label) %>
<% displayformstart(form, page_info) %>
<% displayformitem(form.value.query, "query") %>
<% displayformend(form) %>
This form accepts a Postgresql SELECT statement and displays the results. Examples:
SELECT clientuserid, sum(bytes) AS total FROM weblog GROUP BY clientuserid ORDER BY total DESC
SELECT extract(hour from date) AS hour, sum(numrequest) AS numrequest, sum(numblock) AS numblock FROM usagestat GROUP BY extract(hour from date) ORDER BY hour
The available database tables and descriptions are as follows:
PubWeblog and PubBlocklog
These tables contain the combined squid access log and dansguardian log for every access and blocked access respectively. The definition of the table is as follows:
(
sourcename character varying(40),
clientip inet NOT NULL,
clientuserid character varying(64) NOT NULL,
logdatetime timestamp(3) without time zone NOT NULL,
uri text NOT NULL,
bytes integer NOT NULL,
reason text,
score integer,
shortreason text
)
dbHistLog
This table contains the database history, including such information as which log files were loaded and how many entries they contained. The definition of the table is as follows:
(
logdatetime timestamp(3) without time zone NOT NULL,
msgtext text
)
Source
This table contains the list of log file sources. The definition of the table is as follows:
(
sourcename character varying(40) NOT NULL,
method character varying(100) NOT NULL,
userid character varying(32),
passwd character varying(255),
source character varying(255) NOT NULL,
tzislocal boolean,
enabled boolean
)
Usagestat
This table contains a historical record of pages requested and blocked by hour. The definition of the table is as follows:
(
sourcename character varying(40) NOT NULL,
date timestamp(0) without time zone NOT NULL,
numrequest integer,
numblock integer
)
Watchlist
This table contains the user watch list. The definition of the table is as follows:
(
clientuserid character varying(64) NOT NULL,
expiredatetime timestamp(0) without time zone NOT NULL
)