Health Checks and Diagnostics
System Health Check
Firefly III provides a health check endpoint:Database Integrity Checks
Run comprehensive database validation:correct-database command runs multiple correction routines:
Run
firefly-iii:correct-database after:- Restoring from backup
- Major version upgrades
- Database migrations
- Suspected data corruption
Common Issues
Login Problems
Cannot login after fresh install
Cannot login after fresh install
Symptoms: Login fails immediately or redirects to login page.Solutions:
-
Check if user account exists:
-
Verify authentication guard:
-
Clear sessions and cache:
-
Check database connection:
2FA codes not working
2FA codes not working
Symptoms: Valid 2FA codes are rejected.Solutions:
-
Check server time synchronization:
-
Verify you’re using the latest QR code:
- QR codes change on each page load
- Re-scan the current code
-
Check for code reuse:
- Codes are blocked for 5 minutes after use
- Wait for next code generation
- Use a backup code instead
- Reset 2FA (see Security - Lost 2FA Device)
Locked out after failed logins
Locked out after failed logins
Symptoms: Account blocked after multiple failed attempts.Solutions:
Database Issues
Migration fails
Migration fails
Symptoms:
php artisan migrate fails with errors.Solutions:-
Check database connection:
-
Verify credentials in
.env: -
Check database exists:
-
Fix migration table issues:
-
Check for insufficient permissions:
Database connection refused
Database connection refused
Symptoms: “Connection refused” or “Could not connect to database”.Solutions:
-
Verify database is running:
-
Check host and port:
-
For Docker, use container name:
-
Check firewall rules:
Data corruption or inconsistencies
Data corruption or inconsistencies
Symptoms: Missing transactions, incorrect balances, broken relationships.Solutions:
Permission Issues
File permission errors
File permission errors
Symptoms: “Permission denied” errors, cannot write logs, cache errors.Solutions:
Users cannot access certain features
Users cannot access certain features
Symptoms: Users get access denied errors or missing features.Solutions:
-
Check user roles:
-
Fix group memberships:
- Verify role permissions:
-
Check if user is blocked:
Performance Issues
Slow page loads
Slow page loads
Symptoms: Pages take a long time to load, especially dashboards.Solutions:
-
Enable caching:
-
Optimize configuration:
-
Database optimization:
-
Check for large datasets:
-
Review server resources:
High memory usage
High memory usage
Symptoms: Out of memory errors, 500 errors during operations.Solutions:
-
Increase PHP memory limit:
-
Optimize large imports:
- Import in smaller batches
- Use CSV import instead of API
-
Disable debug mode:
Import/Export Issues
Import fails or times out
Import fails or times out
Symptoms: CSV/JSON imports fail with timeout or memory errors.Solutions:
-
Increase PHP limits:
-
Split large files:
- Break CSV into smaller chunks
- Import in multiple batches
-
Check file encoding:
-
Validate CSV format:
- Check column separators
- Verify date formats
- Remove special characters
-
Review import logs:
Export produces empty or corrupt files
Export produces empty or corrupt files
Symptoms: Downloaded files are empty or cannot be opened.Solutions:
-
Check storage permissions:
-
Clear export cache:
-
Try different export format:
- CSV vs JSON
- Different date ranges
-
Check error logs:
Debugging Procedures
Enable Debug Mode
.env
Check Log Files
Firefly III maintains multiple log files:Useful Debugging Commands
Database Queries
Error Messages
Common Error Codes
500 Internal Server Error
500 Internal Server Error
Possible causes:
- PHP fatal error
- Database connection failure
- Permission issues
- Configuration errors
419 Page Expired
419 Page Expired
Cause: CSRF token mismatch or session expired.Solutions:
403 Forbidden
403 Forbidden
Possible causes:
- File permission issues
- Web server configuration
- .htaccess problems
413 Request Entity Too Large
413 Request Entity Too Large
Cause: Upload exceeds size limits.Solutions:
Docker-Specific Issues
Container won't start
Container won't start
Solutions:
Database initialization fails
Database initialization fails
Solutions:
Getting Help
If you’re still experiencing issues:Check Documentation
Review official resources:
Search Existing Issues
Search for similar problems:
- GitHub issue tracker
- Community forums
- Discord/Reddit discussions
Maintenance Commands
Regular maintenance commands to keep Firefly III healthy:Related Topics
- User Management - User-related issues
- Security - Authentication problems
- Backup & Restore - Data recovery