flutter_log_handler 1.0.2
flutter_log_handler: ^1.0.2 copied to clipboard
Enterprise-grade Flutter logging with console/file logs, crash capture, API interception, and built-in log viewer UI.
Changelog #
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
1.0.2 - 2026-02-25 #
🚀 Major Enhancements #
-
✅ Added enterprise-grade config-driven log upload system
- Dynamic multipart request body support
- Static + runtime upload parameters
- Strongly typed HTTP method support (
POST,PUT,PATCH) - Customizable file field name
- Fully auto-upload compatible
-
✅ Introduced
LogUploadMethodenum- Eliminates invalid HTTP method strings
- Type-safe upload configuration
-
✅ Added
UploadFieldsBuilder- Supports both synchronous and asynchronous runtime body parameters
- Enables dynamic session/user metadata injection
✨ Improvements #
- Improved upload architecture for scalability and backend flexibility
- Refactored
_uploadFileToServerto be fully config-driven - Cleaner public API for upload configuration
- Improved separation of configuration and service logic
- Better cancellation handling using
CancelToken - Upload progress state more consistent across manual & auto upload
🐛 Fixes #
- Fixed upload HTTP method type mismatch issue
- Fixed enum handling when converting to HTTP request method
- Improved upload state reset handling after cancellation
- Minor stability improvements in upload lifecycle
⚡ Performance Improvements #
- Reduced redundant upload state updates
- Optimized multipart body generation
- Improved memory handling during compressed uploads
1.0.1 - 2026-02-18 #
✨ Improvements #
-
Converted
loadInitialLogsto a Stateful implementation- Improved lifecycle handling
- Ensured consistent refresh behavior
- Better control during filter and search updates
-
Redesigned Filter Chips UI
- Modern animated selection
- Clear visual highlight for selected level
- Improved spacing and touch feedback
- Better overall UX consistency
-
Enhanced Export Percentage Loader
- Animated circular progress indicator
- Smooth percentage transitions
- Gradient-based progress arc
- Theme-aware loader colors
- Improved export overlay appearance
-
Added log upload control options:
- IgnoreInfoLogs → skip info-level logs during manual or auto upload
- ClearLogsOnLogout → automatically clear logs when user logs out
- UploadLevels → upload only selected log levels (null = upload all)
- KeepUploadHistory → preserve uploaded logs in history instead of auto-clearing
- Improved manual upload logic:
-
Enhanced UploadHistoryScreen
- Shows uploaded logs even when keepUploadHistory is enabled
🐛 Fixes #
-
Fixed filter + pagination issue
- Logs were not fully displayed when filtering by Info / Warning / Error
- Corrected pagination logic to ensure all matching logs are shown
-
Fixed export progress visibility state
- Improved state management during export process
- Prevented UI inconsistencies while exporting
⚡ Performance Improvements #
- Improved pagination efficiency when applying filters
- Optimized UI updates during filter changes
- Reduced unnecessary rebuilds in export progress overlay
1.0.0 #
⚡ Stable Release #
This is the first stable release of flutter_log_handler with Hive-based logging, advanced search, and enterprise-ready export features.
🚀 Major Enhancements #
- Hive-based lazy log storage with optimized pagination (500k+ safe).
- Export & Share enhancements:
- Export logs as TXT, JSON, PDF, or compressed GZIP.
- Export today only logs option.
- Progress loader during log export.
- Customizable export bottom sheet and formats.
- Delete logs improvements:
- Level-based or complete log deletion.
- Confirmation dialog for safety.
- Bottom sheet selection for log levels.
- Enterprise-grade search & filtering:
- Support for log level filter + search combined.
- High-performance pagination and streaming.
- Strong null-safety handling across models, service, and UI.
- Optimized retention mechanism to auto-clean old logs.
🛠 Improvements #
- Improved performance:
- Log loading and filtering optimized for 500k+ logs.
- Batched export writes for large logs.
- PDF export fully paginated for large datasets.
- JSON export formatted with summary + logs array.
- Minor internal optimizations and code cleanup.
- Enhanced README and documentation for stable API.
0.1.0 #
⚠️ Breaking Changes #
- Replaced previous LogService with Hive-based LogServiceHive for persistent logging.
- Renamed
MyLogScreen→LogViewerScreen- Update all imports and widget references accordingly.
- Updated export menu structure to use:
enableCustomExportMenuallowedExportFormats
- LogScreen constructor updated with new action button controls:
enableShareButtonenableRefreshButtonenableClearButton
- Internal filtering engine refactored (custom filtering logic may require minor integration updates)
🚀 Major Enhancements #
- Added animated log level filter chips
- Added collapsible search bar with smooth animation
- Implemented advanced log search & filtering engine
- Added Copy Log button inside each log card
- Improved route tracking display in log subtitle
- Added export progress loader
- Added log loading indicator
- Added enterprise-grade export formats:
- Export as JSON
- Export as PDF
- Export grouped by date
- Export only today logs
- Added customizable export bottom sheet
- Improved filtering and rendering performance
🛠 Improvements #
- Cleaner production-ready UI architecture
- Better separation of filtering logic
- Improved ExpansionTile rendering
- Enhanced search performance
- Improved sensitive data masking
- Stronger null-safety handling
- Minor internal optimizations and fixes
0.0.5 #
🚀 Enhancements #
- Added custom AppBar customization in LogScreen:
appBarColorto change AppBar backgroundcenterTitleto toggle title alignment- Custom icons for leading, refresh, share, and delete actions
- Custom callbacks for AppBar icon taps
- Added customizable delete confirmation dialog:
deleteDialogTitle,deleteDialogMessage,deleteDialogConfirmText,deleteDialogCancelText- Fully supports custom button actions
- Added enhanced log list display:
- Shows log timestamp + route
- Pull-to-refresh for logs
- Filter logs by level with horizontal chips
- Selectable stack trace in expanded log card
- Improved log sharing with customizable share action
- Updated color handling using
.withValues()for consistent opacity
🛠 Improvements #
- Refactored internal LogScreen UI for flexible customization
- Improved performance of log filtering, refresh, and sharing
- Enhanced null safety in log models and UI
- Fixed sensitive data masking to ensure keys like
password,token,apiKeyare hidden - Minor bug fixes and code cleanup
0.0.4 #
🚀 Enhancements #
- Added customizable LogScreen UI with:
- Custom title, no-logs message, and log colors per level
- Optional chip indicators for log levels
- Customizable delete confirmation dialog text
- Customizable date format for log timestamps
- Added pull-to-refresh support for LogScreen
- Added share logs feature using
share_plus - Improved filter chips with horizontal scroll and better color indicators
- Added expanded error & info display with selectable stack trace
- Updated color handling to use
.withValues()instead of deprecated.withOpacity()
🛠 Improvements #
- Refactored internal log UI for modern Flutter best practices
- Improved performance of log filtering and refresh
- Enhanced null safety and resilience in log encoding/decoding
- Updated clear logs confirmation flow with improved UX
- Minor bug fixes and code cleanup
0.0.3 #
🚀 Enhancements #
- Added automatic crash tagging (device info, platform metadata, build flavor support)
- Added API endpoint tagging in error logs
- Improved structured log model
- Improved stack trace handling
- Enhanced API interceptor logging structure
- Improved sensitive data masking
- Enterprise branding improvements
- SEO optimized README documentation
🛠 Improvements #
- Performance refinements
- Improved log persistence reliability
- Refactored internal log encoding/decoding
- Enhanced production safety for logging flow
0.0.2 #
- Added fileName and directoryName configuration
- Added getLogs() method
- Improved log loading mechanism
- Enhanced README documentation
- Improved MIT License
- Production-ready refinements
0.0.1 #
- Initial release of flutter_log_handler
- Configurable log storage
- Console logging support
- File logging support
- Built-in LogScreen UI
- Crash wrapper support
- API interceptor support**