Auditing data changes

This recipe provides different ways of collecting changes to data contained in the tables for auditing purposes.

First, you must make the following decisions:

  • Do you need to audit all changes or only some?
  • What information about the changes do you need to collect? Only the fact that the data has changed?
  • When recording the new value of a field or tuple, do you also need to record the old value?
  • Is it enough to record which user made the change, or do you also need to record the IP address and other connection information?
  • How secure (tamper-proof) must the auditing information be? For example, does it need to be kept separately, away from the database being audited?

Changes can be collected using triggers which collect ...

Get PostgreSQL 10 Administration Cookbook now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.