Re: trigger ddl actions in a table - Mailing list pgsql-admin

From Brad Nicholson
Subject Re: trigger ddl actions in a table
Date
Msg-id 1195243488.8966.379.camel@bnicholson-desktop
Whole thread Raw
In response to trigger ddl actions in a table  ("König, Monika" <monika.koenig@bonn.de>)
List pgsql-admin
On Fri, 2007-11-16 at 07:01 +0100, "König, Monika" wrote:
>
> I need a way for logging every action on the system catalog. I must have a
> table which shows when a tables was created or updated or deleted. I need
> the date  of the change .
>
> I tried to make an trigger on pg_catalog.pg_class but this throws an error :
> "ERROR: permission denied: "pg_class" is a system catalog".
>
> I can see all ddl in my log files, but
>     - there are even the errors in and
>     - i can't use it for a select
>
>
> Is there an possibility for having such an system-action table??

You can't put triggers on the system catalog tables (as your error
points out).  The only way that I know of to track this directly through
the DB is to log the DDL changes in the Postgres logs, and then parse
that out.


--
Brad Nicholson  416-673-4106
Database Administrator, Afilias Canada Corp.



pgsql-admin by date:

Previous
From: "Joshua D. Drake"
Date:
Subject: Re: PostgreSQL - Services delivery query ?
Next
From: Esben Mose Hansen
Date:
Subject: Version database structure and content