Circulation Audit logs of all actions filtered by a patron and/or an item with additional filters.
Circulation supports interaction with PubSub. So we can use it for logging of actions. The following approach can be applied:
1) Interceptor generates event for some action and send it to PubSub;
2) Listener handles these events and saves it in storage;
3) Client retrieves logs from Logs Storage.
LogRecord
LogRecord is a main entity for saving/retrieving log info:
Field | Type | Default | Required | Note |
---|---|---|---|---|
EventId | UUID | Y | ||
User | UUID | N | ||
Item | UUID | N | ||
Object | Enum<String> | N | ||
Action | N | |||
Date | DateTime | N | ||
ServicePoint | String | N | ||
Source | N | |||
Description | String | N | ||
LinkTo | UUID | N | ||
Notes | Text | N |