Although you can build something similar using existing event adapters such as
this is built for purpose to reduce the effort and provide optimal performance for auditing or logging changes.
By default you can annotate beans with
@ChangeLog and associated change events are logged by default
in a JSON form with appropriate auditing attributes such as who made the changes and ip address of the user etc
via implementation of
Interface Summary Interface Description ChangeLogFilterUsed to provide fine grained control over what persist requests are included in the change log. ChangeLogListenerListen for changes. ChangeLogPrepareListen for changes. ChangeLogRegisterUsed to assign ChangeLogFilters to bean types.
Class Summary Class Description BeanChangeA bean insert, update or delete change sent as part of a ChangeSet. ChangeSetHolds a set of changes.
Enum Summary Enum Description ChangeTypeThe type of the change. TxnStateTransaction state when ChangeSets are sent to the ChangeSetListener.