infra/experiments/logs-viewer/README.md
A web-based log viewer for analyzing Ente application logs. This tool provides similar functionality to the mobile log viewer, allowing you to upload, filter, and analyze log files from customer support requests.
logger:ServiceName syntax to filter by specific loggerslogger:Auth* to match all loggers starting with "Auth"Local Development:
cd infra/experiments/logs-viewer
python3 -m http.server 8080
Open http://localhost:8080 in your browser
Upload Log Files:
.log filesThe viewer understands the Ente log format as generated by super_logging.dart:
[process] [loggerName] [LEVEL] [timestamp] message
Examples:
[bg] [SyncService] [INFO] [2025-08-24 01:36:03.677678] Syncing started[CollectionsService] [WARNING] [2025-08-24 01:36:04.123456] Connection failedMulti-line Error Support:
โคท error detail linesconnection failedlogger:SyncServicelogger:Sync* logger:Collection*logger:Auth* login failedFor testing, you can use any ZIP file containing .log files from Ente mobile app logs.
logs-viewer/
โโโ index.html # Main HTML structure
โโโ styles.css # CSS styling
โโโ script.js # JavaScript logic
โโโ README.md # This documentation
โโโ references/ # UI reference screenshots
LogViewer: Main application classparseLogFile() and parseLogLine()applyCurrentFilter()renderLogs() and createLogEntryHTML()currentFilter object and matchesFilter() methodparseLogLine()initializeEventListeners()ZIP file not loading:
.log filesLogs not parsing correctly:
Performance issues with large files:
Search not working:
logger:Service*