Key Features
-
Real-Time Monitoring Detects and logs file or directory events: Creation: Tracks newly created files or folders. Modification: Captures updates to file contents or metadata. Deletion: Logs removed files or directories. Movement: Monitors files or directories that are renamed or moved to another location. Supports monitoring multiple directories simultaneously.
-
Cross-Platform Compatibility Works on major operating systems like Windows, macOS, and Linux. Ensures consistent performance across platforms with minimal configuration.
-
Dual Interface: GUI and CLI GUI: Intuitive interface using ttkbootstrap for a modern look and feel. CLI: Comprehensive commands for: Starting directory monitoring. Viewing or filtering logs. Cleaning up old logs based on retention periods. Useful for power users or integration with automated scripts.
-
Logging and Event Management Captures detailed information about each event: Timestamp: Exact time of the event. Source: Whether the event involves a file or a directory. Path: Full path to the affected file or directory. Change Type: Type of change (e.g., Created, Modified, Deleted, Moved). Size Before/After: File size comparison for modification events. Logs are stored in a database, ensuring durability and easy access. Users can view logs via: GUI TreeView: Displays logs in a structured format with filtering and search options. CLI Commands: Output logs in a readable format or filter based on criteria like change type.
-
Import/Export Functionality Export Directories: Save the list of monitored directories to a file for backup or sharing. Import Directories: Load directories from a file and automatically add them to the active monitoring list. Validates directory paths and avoids duplicates.
-
Robust Error Handling Resilient to common issues like: Permission Errors: Handles restricted access gracefully without crashing. Threading Errors: Automatically resets the monitoring thread if stopped or interrupted. Provides meaningful error messages and continues operation during unexpected exceptions.
-
Search and Filtering GUI: Search logs by keywords or criteria (e.g., timestamps, paths, change types). Refresh logs dynamically to reflect the latest events. CLI: Filter logs by specific attributes (e.g., change_type=Modified).
-
Directory Management Allows real-time addition and removal of monitored directories. Displays a live list of all actively monitored directories in the GUI..
-
Log Cleanup Efficient cleanup of old logs to save disk space: Specify retention periods (e.g., delete logs older than 30 days). Available via both GUI and CLI.