--
-- packages/acs-kernel/sql/acs-logs-create.sql
--
-- @author rhs@mit.edu
-- @creation-date 2000-10-02
-- @cvs-id $Id: acs-logs-create.sql,v 1.8 2011/07/07 10:46:02 gustafn Exp $
--
create sequence t_acs_log_id_seq;
create view acs_log_id_seq as
select nextval('t_acs_log_id_seq') as nextval;
create table acs_logs (
log_id integer
constraint acs_logs_log_id_pk
primary key,
log_date timestamptz default current_timestamp not null,
log_level varchar(20) not null
constraint acs_logs_log_level_ck
check (log_level in ('notice', 'warn', 'error',
'debug')),
log_key varchar(100) not null,
message text not null
);
-- create or replace package acs_log
-- as
--
-- procedure notice (
-- log_key in acs_logs.log_key%TYPE,
-- message in acs_logs.message%TYPE
-- );
--
-- procedure warn (
-- log_key in acs_logs.log_key%TYPE,
-- message in acs_logs.message%TYPE
-- );
--
-- procedure error (
-- log_key in acs_logs.log_key%TYPE,
-- message in acs_logs.message%TYPE
-- );
--
-- procedure debug (
-- log_key in acs_logs.log_key%TYPE,
-- message in acs_logs.message%TYPE
-- );
--
-- end;
-- show errors
-- create or replace package body acs_log
-- procedure notice
-- added
select define_function_args('acs_log__notice','log_key,message');
--
-- procedure acs_log__notice/2
--
CREATE OR REPLACE FUNCTION acs_log__notice(
notice__log_key varchar,
notice__message varchar
) RETURNS integer AS $$
DECLARE
BEGIN
insert into acs_logs
(log_id, log_level, log_key, message)
values
(nextval('t_acs_log_id_seq'), 'notice', notice__log_key, notice__message);
return 0;
END;
$$ LANGUAGE plpgsql;
-- procedure warn
-- added
select define_function_args('acs_log__warn','log_key,message');
--
-- procedure acs_log__warn/2
--
CREATE OR REPLACE FUNCTION acs_log__warn(
warn__log_key varchar,
warn__message varchar
) RETURNS integer AS $$
DECLARE
BEGIN
insert into acs_logs
(log_id, log_level, log_key, message)
values
(nextval('t_acs_log_id_seq'), 'warn', warn__log_key, warn__message);
return 0;
END;
$$ LANGUAGE plpgsql;
-- procedure error
-- added
select define_function_args('acs_log__error','log_key,message');
--
-- procedure acs_log__error/2
--
CREATE OR REPLACE FUNCTION acs_log__error(
error__log_key varchar,
error__message varchar
) RETURNS integer AS $$
DECLARE
BEGIN
insert into acs_logs
(log_id, log_level, log_key, message)
values
(nextval('t_acs_log_id_seq'), 'error', error__log_key, error__message);
return 0;
END;
$$ LANGUAGE plpgsql;
-- procedure debug
-- added
select define_function_args('acs_log__debug','log_key,message');
--
-- procedure acs_log__debug/2
--
CREATE OR REPLACE FUNCTION acs_log__debug(
debug__log_key varchar,
debug__message varchar
) RETURNS integer AS $$
DECLARE
BEGIN
insert into acs_logs
(log_id, log_level, log_key, message)
values
(nextval('t_acs_log_id_seq'), 'debug', debug__log_key, debug__message);
return 0;
END;
$$ LANGUAGE plpgsql;
-- show errors