To configure a class for auditing, create audit definitions for the events that you want to audit.
If you want a complete record of object changes, set the object state recording level property to capture before and after snapshots of the object. This property is one of the audit properties for a class. Auditing all object changes by using snapshots consumes much more database space than the alternative of auditing specific properties.