Skip to main content

🛡️ Audit Logs

Audit Logs provide a record of admin-significant actions performed across the system. Every login attempt, library change, user management action, and configuration update is logged with a timestamp, the user who performed it, and the originating IP address.

Audit Logs are available to admin users only and can be found under Settings > Audit Logs.


📋 Activity Log

The Activity Log displays all recorded events in reverse chronological order (newest first).

Audit Logs

Table Columns

ColumnDescription
WhenRelative timestamp (e.g., "Just now", "5m ago", "2h ago", "3d ago"). Hover for the full date and time.
UserThe user who performed the action. Shows system for automated or internal events like login processing.
ActionA color-coded badge indicating the type of action (see action types below).
DescriptionA human-readable summary of what happened. Click to expand long descriptions.
IP AddressThe IP address of the request, along with a country flag resolved via geolocation.

🏷️ Action Types

Actions are grouped into categories and displayed with color-coded badges.

🟢 Green (Created / Success)

ActionDescription
Login SuccessA user successfully logged in
User CreatedA new user account was created
Library CreatedA new library was added
Book UploadedA book file was uploaded via Bookdrop
Book SentA book was sent to a device or email
Shelf CreatedA new shelf was created
Magic Shelf CreatedA new magic shelf was created
Email Provider CreatedA new email provider was configured
OPDS User CreatedA new OPDS user was added

🔵 Blue (Updated / Executed)

ActionDescription
User UpdatedA user profile was modified
Password ChangedA user's password was changed
Library UpdatedLibrary settings were modified
Library ScannedA library scan was triggered
Metadata UpdatedBook metadata was edited
Settings UpdatedApplication settings were changed
Task ExecutedA background task was started (e.g., metadata refresh)
Shelf UpdatedA shelf was modified
Magic Shelf UpdatedA magic shelf was modified
Email Provider UpdatedAn email provider configuration was changed
OPDS User UpdatedAn OPDS user was modified
Naming Pattern ChangedA library's file naming pattern was updated
Duplicate Books MergedDuplicate books were merged together

🟠 Orange (Security / Permissions)

ActionDescription
Permissions ChangedA user's permissions were modified
OIDC Config ChangedOpenID Connect (SSO) configuration was updated

🔴 Red (Failed / Deleted)

ActionDescription
Login FailedA login attempt was unsuccessful
User DeletedA user account was removed
Library DeletedA library was deleted
Book DeletedA book was removed from a library
Shelf DeletedA shelf was removed
Magic Shelf DeletedA magic shelf was removed
Email Provider DeletedAn email provider was removed
OPDS User DeletedAn OPDS user was removed

🔍 Filtering

Three filters are available in the toolbar to narrow down the log.

Filter by Action

Select a specific action type from the dropdown to show only matching entries (e.g., only "Login Failed" events).

Filter by User

Select a username from the dropdown to see only actions performed by that user. The list is populated from all usernames that appear in the logs.

Filter by Date Range

Pick a start and end date to view logs from a specific time period.

Clear Filters

When filters are active, a clear button appears to reset all filters at once.


🔄 Auto-Refresh

Click the refresh icon in the toolbar to enable auto-refresh. When active, the log automatically reloads every 10 seconds, making it useful for monitoring live activity. The icon spins while auto-refresh is enabled. Click it again to disable.


🌍 IP Geolocation

Each log entry includes the originating IP address along with a country flag. The country is resolved automatically using IP geolocation. Private or local IP addresses (127.x.x.x, 192.168.x.x, etc.) do not display a country flag.


📋 Notes

  • Audit Logs are only accessible to admin users.
  • Logs are stored indefinitely with no automatic cleanup.
  • Descriptions longer than 1024 characters are truncated.
  • The log table supports pagination with page sizes of 10, 25, or 50 entries.
  • Automated system actions (like login processing) are logged with the username system.
  • Audit logging is designed to be non-blocking. If logging fails for any reason, it does not affect the operation that triggered it.