1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102
|
CREATE SEQUENCE log_log_index_seq START WITH 1;
CREATE TABLE log (
log_index INTEGER NOT NULL,
log_ref NUMBER(20) NULL,
log_host VARCHAR2(64) DEFAULT 'localhost' NOT NULL,
log_time DATE NOT NULL,
log_sev VARCHAR2(4) NOT NULL,
log_msg VARCHAR2(4000),
log_hash VARCHAR2(32),
entry_status VARCHAR2(16) DEFAULT 'NEW' NOT NULL,
path VARCHAR2(4000),
userid VARCHAR2(8),
grp VARCHAR2(8),
program VARCHAR2(8),
subroutine VARCHAR2(16),
status VARCHAR2(12),
hash VARCHAR2(50),
path_data VARCHAR2(4000),
hash_data VARCHAR2(50),
key_uid VARCHAR2(64),
key_uid_data VARCHAR2(64),
key_id VARCHAR2(16),
module VARCHAR2(8),
return_code INTEGER,
syscall VARCHAR2(16),
ip VARCHAR2(16),
tty VARCHAR2(16),
peer VARCHAR2(64),
fromhost VARCHAR2(64),
obj VARCHAR2(128),
interface VARCHAR2(64),
time VARCHAR2(64),
dir VARCHAR2(4000),
linked_path VARCHAR2(4000),
port INTEGER,
service VARCHAR2(64),
facility VARCHAR2(32),
priority VARCHAR2(32),
syslog_msg VARCHAR2(4000),
mode_old VARCHAR2(16),
mode_new VARCHAR2(16),
attr_old VARCHAR2(16),
attr_new VARCHAR2(16),
device_old VARCHAR2(16),
device_new VARCHAR2(16),
owner_old VARCHAR2(9),
owner_new VARCHAR2(9),
group_old VARCHAR2(9),
group_new VARCHAR2(9),
ctime_old VARCHAR2(25),
ctime_new VARCHAR2(25),
atime_old VARCHAR2(25),
atime_new VARCHAR2(25),
mtime_old VARCHAR2(25),
mtime_new VARCHAR2(25),
chksum_old VARCHAR2(50),
chksum_new VARCHAR2(50),
link_old VARCHAR2(4000),
link_new VARCHAR2(4000),
size_old NUMBER(20),
size_new NUMBER(20),
hardlinks_old NUMBER(20),
hardlinks_new NUMBER(20),
inode_old NUMBER(20),
inode_new NUMBER(20),
imode_old NUMBER(20),
imode_new NUMBER(20),
iattr_old NUMBER(20),
iattr_new NUMBER(20),
idevice_old NUMBER(20),
idevice_new NUMBER(20),
iowner_old NUMBER(20),
iowner_new NUMBER(20),
igroup_old NUMBER(20),
igroup_new NUMBER(20)
);
CREATE OR REPLACE TRIGGER trigger_on_log
before insert on log
for each row
declare
log_index integer;
begin
select log_log_index_seq.NEXTVAL into :new.log_index from dual;
end trigger_on_log;
.
run;
CREATE UNIQUE INDEX log_log_index_key on log (log_index);
CREATE INDEX ix_hash ON log (log_hash);
CREATE INDEX ix_log_host ON log (log_host);
CREATE INDEX ix_log_ref ON log (log_ref);
CREATE INDEX ix_entry_status ON log (entry_status);
GRANT INSERT ON log TO samhain;
GRANT ALTER ON log_log_index_seq TO samhain;
GRANT SELECT ON log_log_index_seq TO samhain;
|