A professional, feature-rich PHP Error Log Viewer with advanced tracking, progress monitoring, and beautiful dark/light themes. Perfect for developers who want to efficiently monitor, track, and resolve PHP errors with a modern, intuitive interface.
- Real-time Error Parsing: Automatically parses and categorizes PHP error logs
- Multi-file Error Support: Handles errors from multiple PHP files and libraries
- Smart Error Grouping: Groups similar errors for better organization
- Stack Trace Analysis: Detailed stack trace viewing for complex errors
- Error Log Clearing: One-click error log cleanup with confirmation
- Error Resolution Tracking: Mark errors as solved with developer attribution
- Reoccurrence Detection: Automatically detects when solved errors occur again
- Visual Progress Bars: Segmented progress bars with diagonal stripes for solved errors
- Master Progress Overview: Comprehensive dashboard showing overall error resolution status
- Developer Identity Management: Track who solved which errors with persistent cookie storage
- Dark/Light Theme Toggle: VS Code-style themes with smooth transitions
- Responsive Design: Works perfectly on desktop, tablet, and mobile devices
- Color-coded Error Types: Instant visual identification of error severity
- π΄ Fatal/Error: Red tags with shadows
- π‘ Warning: Yellow tags with shadows
- π΅ Notice: Blue tags with shadows
- π Deprecated: Orange tags with shadows
- π£ Parse: Purple tags with shadows
- Collapsible Sections: Organized sections with persistent state
- Modal Error Details: Full error content in beautiful modal windows
- One-click File Path Copying: Quick access to error file locations
- Error Hash Generation: Unique identification for each error type
- JSON Export/Import: Solved errors data persistence
- Recent Errors Filter: 24-hour error view for immediate issues
- Critical Error Highlighting: Special treatment for vendor/library errors
- Error Statistics: Real-time counts of different error types
- Progress Tracking: Visual indicators for team productivity
- Time-based Filtering: Focus on recent errors that need attention
- Reoccurrence Alerts: Immediate notification when solved errors return
Create a file called install.php
in your web root and run it:
<?php
// PHP Error Log Viewer Installer
$repo = 'https://github.com/0xAhmadYousuf/PHP-Error-Log-Viewer/archive/refs/heads/main.zip';
$zip = 'error-viewer.zip';
$target = './error-viewer/';
echo "π₯ Downloading PHP Error Log Viewer...\n";
file_put_contents($zip, file_get_contents($repo));
$za = new ZipArchive();
if ($za->open($zip) === TRUE) {
$za->extractTo('./');
$za->close();
rename('./PHP-Error-Log-Viewer-main/src', $target);
unlink($zip);
rmdir('./PHP-Error-Log-Viewer-main');
echo "β
Installation complete! Visit: " . $_SERVER['HTTP_HOST'] . "/error-viewer/\n";
} else {
echo "β Installation failed. Please download manually.\n";
}
?>
-
Download the repository:
git clone https://github.com/0xAhmadYousuf/PHP-Error-Log-Viewer.git
-
Copy files to your web directory:
cp -r PHP-Error-Log-Viewer/src/* /path/to/your/webroot/error-viewer/
-
Set permissions:
chmod 755 /path/to/your/webroot/error-viewer/ chmod 666 /path/to/your/webroot/error-viewer/solved_errors.json
-
Access the viewer: Navigate to
http://yourdomain.com/error-viewer/
src/
βββ index.php # Main application file
βββ template.html # UI template with themes and styling
βββ update_error_status.php # API endpoint for marking errors as solved
βββ solved_errors.json # Persistent storage for solved errors
βββ error_log # Your PHP error log file
- Error Log Path: Place your
error_log
file in the same directory asindex.php
- Permissions: Ensure web server can read
error_log
and write tosolved_errors.json
- Developer Name: First-time visitors will be prompted to enter their name for tracking
- Theme Persistence: Uses cookies to remember user preferences
- Section State: Remembers collapsed/expanded sections
- Developer Identity: Persistent developer name storage
- Error Resolution: JSON-based solved error tracking
- Recent Errors: View errors from the last 24 hours
- Error Groups: Browse errors organized by file
- Critical Errors: Focus on vendor/library issues
- Full Error Details: Click "ποΈ View Full" for complete error information
- Mark as Solved: Click β button next to errors or files
- Progress Bars: Visual indicators show solved vs unsolved errors
- Master Overview: Dashboard showing overall project health
- Automatic Detection: System detects when solved errors occur again
- Reoccurrence Details: Click
β οΈ badges for solve history - Re-marking: Easily re-mark reoccurred errors as solved
- Theme Toggle: Switch between dark/light modes
- Section Management: Collapse/expand sections as needed
- Developer Identity: Change your name for proper attribution
- Input Sanitization: All user inputs are properly sanitized
- XSS Protection: HTML entities encoding for all dynamic content
- Safe File Operations: Secure file read/write operations
- Cookie Security: Secure cookie handling for preferences
We welcome contributions! Please see our Contributing Guidelines for details.
- Fork the repository
- Create a feature branch:
git checkout -b feature/amazing-feature
- Commit your changes:
git commit -m 'Add amazing feature'
- Push to the branch:
git push origin feature/amazing-feature
- Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
Ahmad Yousuf - 0xAhmadYousuf
- Website: 0xAhmadYousuf.com
- Twitter: @0xAhmadYousuf
If you found this project helpful, please consider:
- β Starring the repository
- π Reporting bugs
- π‘ Suggesting new features
- π’ Sharing with other developers
- PHP 8.0+ (uses match expressions and modern PHP features)
- Web Server (Apache, Nginx, or built-in PHP server)
- JSON Extension (usually enabled by default)
- File System Access (read/write permissions)
Q: Errors not showing up?
A: Ensure your error_log
file is in the same directory and has proper read permissions.
Q: Can't mark errors as solved?
A: Check that solved_errors.json
has write permissions (chmod 666).
Q: Theme not persisting? A: Verify that cookies are enabled in your browser.
Q: Progress bars not updating? A: Refresh the page after marking errors as solved.
- Large Log Files: For logs over 10MB, consider rotating or archiving old entries
- Memory Usage: PHP memory limit may need adjustment for very large error logs
- Caching: Browser caching is optimized for static assets
- β¨ Added segmented progress bars with diagonal stripes
- π¨ Implemented color-coded error type tags
- π Enhanced dark mode with colored shadows
- π Added reoccurrence detection and tracking
- π Master progress overview dashboard
- π§ Improved error parsing and categorization
- π Initial release with basic error viewing
- π¨ Dark/light theme support
- π Error marking and tracking
- π± Responsive design
π Helping developers build better PHP applications