Log Tables Documentation Update
Log Tables Feature - Documentation Update Summary
1. Executive Summary
The Log Tables feature in Tadabase allows users to display various types of system and application logs on the app side (front-end). This powerful feature enables users to monitor activity, track changes, and audit various operations within their applications. The feature includes 22 different log types organized into 3 main categories.
This documentation update reviewed the existing documentation, examined the codebase implementation, and identified gaps in the documentation that needed to be addressed.
2. Investigation Process
2.1 Documentation Review
Reviewed the existing documentation located at:
docs/exported-articles/Logging and Audits/(No Section)/1512-adding-logs-to-app-side.html
The existing documentation was comprehensive and included:
- Introduction to app-side logging
- Steps for adding logs to the app
- Overview of log types by category
- Detailed column information for each log type
- Filter options and special filtering capabilities
2.2 Codebase Analysis
Examined key files in the appifany2 directory to understand the complete feature implementation:
app/library/LogTableHelper.php- Backend logic for retrieving log recordsresources/assets/client/js/factory/LogTableService.js- Complete definition of all log tables and their configurationsresources/assets/app/components/af-log-table.js- Front-end component for displaying logsresources/assets/client/js/services/page-components/LogTableComponentHelper.js- Helper service for log table components
3. Findings
3.1 Complete List of Log Tables
The codebase implements 22 different log table types across 3 categories:
Security & Access Logs (7 types)
- Page Views - Tracks all page views within the application
- Blocked IP Logs - IP addresses blocked for excessive login attempts
- Blocked User Account Logs - User accounts blocked after failed login attempts
- User Failed Login Logs - Failed login attempts with metadata
- User Login Logs - All successful login attempts
- Magic Link Token Access Logs - Access granted through magic links
- Access Token Logs - ★ Missing from documentation
Data & Record Management Logs (10 types)
- Delete Record Logs - Records deleted with logging enabled
- Record Change Logs - Updates to records with change logging enabled
- Equation Logs - Equations running in the app
- Task Record History - Records updated via tasks
- Import Template Logs - Import templates executed
- Task Run History - Tasks that were run
- Email Logs - All outgoing emails
- File Upload Logs - Files uploaded to the app
- Secure File Download Logs - Securely downloaded files
- Outgoing Webhook Logs - Webhooks sent to endpoints
- App Export Logs - ★ Missing from documentation
Builder & App Activity Logs (4 types)
- Builder Activity Logs - Updates to data tables, fields, and builder activities
- Page Version Logs - Page version updates and comments
- App Restore Logs - Completed app restores
- Backup Logs - Manual and automated SQL backups
3.2 Documentation Gaps Identified
Two log types were missing from the user-facing documentation:
- Access Token Logs - Shows users currently logged in with active sessions (last 13 hours)
- App Export Logs - Tracks all export operations performed on data tables
4. Changes Made
docs/exported-articles/Logging and Audits/(No Section)/1512-adding-logs-to-app-side.html
4.1 Updates to Log Types Overview Section
Added missing log types to the appropriate category lists:
| Category | Added | Description |
|---|---|---|
| Security & Access Logs | Access Token Logs | Shows users who are currently logged in with active sessions |
| Data & Record Management Logs | Outgoing Webhook Logs | Tracks outgoing webhooks sent to your endpoints (was mentioned but needed detail section) |
| Data & Record Management Logs | App Export Logs | Logs of all export files generated for data tables |
4.2 Detailed Column Documentation Added
Access Token Logs Section
Added comprehensive table with the following columns:
- Session Start (Date/Time)
- Last Active (Date/Time)
- User ID (Connection) - with special filter options
- User Email (Connection) - with special filter options
- User Name (Connection) - with special filter options
- User IP (Text) - with User's IP Address filter
- Browser (Text)
- Referer URL (Link)
- Status (Text)
Note: Includes explanation that this log only shows sessions from the last 13 hours.
Outgoing Webhook Logs Section
Added comprehensive table with the following columns:
- Webhook ID (Id)
- Webhook Name (Text)
- Data Table ID (Connection)
- Data Table Name (Connection)
- Data Record ID (Id) - with "Connected With Current Record" filter
- Status (Text)
- Error Message (Text)
- Target URL (Text)
- Date (Date/Time)
App Export Logs Section
Added comprehensive table with the following columns:
- Created At (Date/Time)
- Export Template ID (Connection)
- Export Template Name (Connection)
- Data Table ID (Connection)
- Data Table Name (Connection)
- App User ID (Connection)
- User ID (Id)
- Start At (Date/Time)
- End At (Date/Time)
- Status (Text)
- Total Records (Number)
- Records Completed (Number)
5. Key Insights from Codebase
5.1 Implementation Details
- Feature Availability: Log Tables feature is available on Tadabase Pro plans and higher
- Backend Implementation: The
LogTableHelper::getRecords()method handles all log retrieval with dynamic field mapping and filtering - Front-end Component: The
af-log-tabledirective provides the UI with pagination, search, and refresh capabilities - Special Filters: Many log types support advanced filtering like "Logged In User", "User's IP Address", "Page Filters", and "Connected With Current Record"
5.2 Security Considerations
The codebase includes several security features:
- Conditional field display based on app meta settings (e.g., login geo fields, IP logging, host information)
- ID encoding/decoding for security
- User role-based filtering options
- Access control through special filter parameters
6. Documentation Quality
Overall Assessment
The existing documentation for the Log Tables feature is comprehensive and well-structured. It includes:
- Clear introduction and use cases
- Step-by-step instructions with screenshots
- Detailed explanations of each log type
- Complete column reference for all log types
- Filter options and special capabilities
- Security considerations
The gaps identified were minor - only 2 log types out of 22 were missing detailed sections, and one of those (Outgoing Webhook Logs) was mentioned but lacked a detailed column reference. This update brings the documentation to 100% completeness.
7. Recommendations
For Users
- Use log filtering extensively to show users only relevant information
- Be mindful of sensitive information when displaying logs on the app side
- Consider using role-based page access to control who can view certain log types
- Access Token Logs are useful for showing "currently online users" features
- App Export Logs help track data export operations for compliance and auditing
For Development Team
- Documentation is now complete and accurately reflects all available log types
- No code changes were needed - the feature is fully implemented
- Consider adding examples of common use cases for the newly documented log types
- Future log types should be added to both the codebase and documentation simultaneously
8. Files Modified
| File Path | Type | Changes |
|---|---|---|
docs/exported-articles/Logging and Audits/(No Section)/1512-adding-logs-to-app-side.html |
Documentation |
|
docs/exported-articles/AI Code and Doc Updates/Code Updates/log-tables-documentation-update.html |
Summary | Created this summary document |
9. Conclusion
The Log Tables feature in Tadabase is a robust and well-implemented system for displaying various types of logs on the application side. The documentation has been updated to include all 22 available log types with complete column references and descriptions.
The updates ensure that users have comprehensive information about:
- Access Token Logs - for monitoring currently active user sessions
- Outgoing Webhook Logs - for tracking webhook deliveries and debugging failures
- App Export Logs - for auditing data export operations
All documentation is now aligned with the codebase implementation, providing users with accurate and complete information to effectively use the Log Tables feature.
We'd love to hear your feedback.