Re: audit sql queries

Поиск
Список
Период
Сортировка
От Jeff Davis
Тема Re: audit sql queries
Дата
Msg-id 1189448902.28581.9.camel@dogma.ljc.laika.com
обсуждение исходный текст
Ответ на audit sql queries  (Dan99 <power919@gmail.com>)
Список pgsql-general
On Sun, 2007-09-09 at 23:13 +0000, Dan99 wrote:
> 1. table(s) affected
> 2. column(s) affected
> 3. action performed on data (ie. update, insert, select, delete)
> 4. previous data for each row and column effected (if data changed or
> deleted)
> 5. new data for each row and column effected (or existing data if data
> is being selected)

Auditing SELECTs is the trickiest; everything else can be done with
triggers.

For SELECT, you can use a view over a set-returning function, where the
function actually reads the underlying data, however that could be bad
for performance.

Alternatively, there is also kind of a trick where you can use an
uncorrelated subquery in a view so that the select has the side effect
of executing a function, like so:

CREATE VIEW mytable_audit AS SELECT * FROM mytable WHERE (SELECT
audit_func());

audit_func() should always return true, and should also record the other
information that you need. This strategy may perform better than using a
set-returning function.

Regards,
    Jeff Davis


В списке pgsql-general по дате отправления:

Предыдущее
От: Darek Czarkowski
Дата:
Сообщение: Re: Postgresql 7.3 on Red Hat Enterprise 5 (Problem with SEMMNI, SEMMNS)
Следующее
От: RC Gobeille
Дата:
Сообщение: Re: Database reverse engineering