app_logger_manager
A comprehensive Flutter app log manager package for your app.
2.0.0
56 downloads/mo
#3715 most downloaded on pub.dev
bahricanyesil/app-log-manager
What this package is like to depend on
Last release 1 years ago
29 Jul 2025
Too new to tell
only 2 release windows
Nearly every release is documented
notes for 4 of 4 stable releases
Nothing withdrawn
no release was ever pulled
1 years old
4 releases · first in 2025
0 releases in the last 12 months
see the full history below
Release timeline
4 releases · Jun 2025 to Jul 2025Releases
latest 4-
2.0.029 Jul 2025Release notes
Open source →⚠️ Breaking Changes
-
Simplified Logging API: Streamlined logging methods to improve usability and performance
- Removed optional parameters (
tag,context,source,method,lineNumber) from basic logging methods (debug,info,warning,error,fatal,verbose) - These parameters are now handled internally or through specialized logging methods
- This change makes the basic logging API cleaner and more intuitive
- Removed optional parameters (
-
LogEntry Model Simplification: Reduced complexity of the
LogEntrymodel- Removed fields:
context,source,method,lineNumber - Kept essential fields:
level,message,timestamp,tag,error,stackTrace,userId,sessionId,correlationId - This change improves performance and reduces memory usage
- Removed fields:
✨ Enhanced
-
Dependency Updates: Updated to latest stable versions for better performance and security
flutter_shared_utilities: Updated from ^1.0.4 to ^1.0.14logger: Updated from ^2.5.0 to ^2.6.1custom_lint: Updated from ^0.7.5 to ^0.8.0flutter_custom_lints: Updated from ^1.0.3 to ^1.0.18
-
Example App Improvements: Updated example application to showcase the simplified API
- Improved log stream viewer widget performance
- Better demonstration of new simplified logging methods
- Enhanced UI for testing different logging scenarios
🛠️ Technical Improvements
- API Clarity: More focused and easier-to-use logging interface
- Performance Optimizations: Reduced overhead from simplified models and methods
- Better Documentation: Updated documentation to reflect the new simplified API
- Improved Maintenance: Cleaner codebase with reduced complexity
📚 Migration Guide
To migrate from v1.x to v2.0.0:
-
Update logging calls: Remove extra parameters from basic logging methods
// Before (v1.x) logger.info('Message', tag: 'MyTag', context: {'key': 'value'}); // After (v2.0.0) logger.info('Message'); -
Use specialized methods: For advanced logging with context, use specialized methods
// For user actions logger.logUserAction('button_click', screen: 'home', parameters: {'id': '123'}); // For API calls logger.logApiCall('GET', '/api/users', statusCode: 200); -
LogEntry construction: Remove deprecated fields when creating custom LogEntry instances
// Before (v1.x) LogEntry(level: LogLevel.info, message: 'Test', context: {...}, source: 'file.dart'); // After (v2.0.0) LogEntry(level: LogLevel.info, message: 'Test', tag: 'MyTag');
-
-
1.0.222 Jun 2025 -
1.0.122 Jun 2025 -
1.0.022 Jun 2025Release notes
Open source →🎉 Initial Release
The first stable release of App Log Manager - a comprehensive Flutter logging package with advanced features for production applications.
✨ Added
Core Logging Features
- Complete Log Level System: 8 log levels (none, fatal, error, warning, info, debug, verbose, all) with priority-based filtering
- Structured Logging: Rich
LogEntrymodel with context, tags, metadata, and source tracking - Real-time Log Streaming: Stream-based architecture for live log monitoring and UI updates
- Context Tracking: Built-in support for user ID, session ID, and correlation ID tracking
- Source Code Tracking: Automatic capture of source file, method name, and line number
Advanced Logging Capabilities
- Performance Monitoring:
logPerformance()method for timing operations and performance metrics - API Call Logging:
logApiCall()with comprehensive HTTP request/response tracking - User Action Tracking:
logUserAction()andlogFeatureUsage()for user behavior analytics - Security Event Logging:
logSecurity()for security-focused event tracking - Business Event Analytics:
logBusinessEvent()for custom business metrics and KPIs - Crash Reporting:
logCrash()with automatic Flutter and platform error handling - Navigation Logging:
logNavigation()for route changes and user flow tracking
Developer Experience
- Interface-based Architecture:
AppLoggerabstract interface for dependency inversion - Factory Pattern:
LogManagerFactorywith 8+ pre-configured logger instances:createDefault()- Basic logger with console outputcreateDevelopmentLogger()- Verbose development loggingcreateProductionLogger()- File-based production loggingcreateConsoleLogger()- Console-only outputcreateFileLogger()- File-based persistent loggingcreateTestLogger()- In-memory testing loggercreateApiLogger()- API monitoring specialized loggercreatePerformanceLogger()- Performance monitoring loggercreateSecurityLogger()- Security-focused logging
- Type Safety: Built with null safety and safe type conversion methods
- Rich Formatting: Emoji icons, ANSI colors, and customizable log formatters
Storage and Persistence
- Multiple Storage Backends: Console output, file logging, and custom storage implementations
- File Logging: Persistent file-based logging with configurable paths
- In-Memory Storage: Fast in-memory storage for testing and development
- Custom Storage Interface:
LogStorageinterface for implementing custom backends - Log Retrieval: Query logs by count, level, tag, and date range
- Export Functionality: JSON export capabilities for log sharing and analysis
Production Features
- Environment Configurations: Optimized presets for development, production, and testing
- Log Sanitization: Automatic removal of sensitive data (passwords, emails, credit cards, phone numbers)
- Memory Management: Configurable log retention limits and automatic cleanup
- Performance Optimized: Efficient logging with minimal performance impact
- Error Handling: Comprehensive error handling with graceful degradation
Models and Utilities
- LogLevel Enum: Complete log level enumeration with priorities, labels, and utilities
- LogEntry Model: Comprehensive log entry model extending
BaseDataModel - Log Formatters: Utility class for formatting durations, bytes, and objects
- Custom Log Printer: Enhanced log printer with emoji icons and better formatting
Example Application
- Comprehensive Demo App: Full-featured example app demonstrating all logging capabilities
- Interactive UI: Live log streaming viewer and interactive demo controls
- Real-world Examples: Practical examples of logging in different scenarios
- Clean Architecture: Example follows Flutter best practices and clean architecture
🛠️ Technical Details
Dependencies
flutter: SDK dependency for Flutter framework integrationflutter_shared_utilities: ^1.0.3: Utilities for base data models and common functionalitylogger: ^2.5.0: Enhanced console logging capabilities
Development Dependencies
flutter_test: Testing framework for comprehensive test coveragecustom_lint: ^0.7.5: Custom linting rules for code qualityflutter_custom_lints: ^1.0.3: Flutter-specific linting rules
Platform Support
- ✅ iOS: Full support for iOS applications
- ✅ Android: Full support for Android applications
- ✅ Web: Full support for Flutter web applications
- ✅ macOS: Full support for macOS desktop applications
- ✅ Windows: Full support for Windows desktop applications
- ✅ Linux: Full support for Linux desktop applications
Dart/Flutter Requirements
- Dart: >= 3.8.1
- Flutter: >= 3.8.1
- Full null safety support
- Compatible with latest Flutter stable releases
📚 Documentation
- Comprehensive README with usage examples and API documentation
- Complete API documentation with detailed method descriptions
- Example app with practical implementation patterns
- Inline code documentation following Dart documentation standards
🧪 Testing
- Unit tests for core logging functionality
- Widget tests for UI components in example app
- Integration tests for end-to-end logging workflows
- Mock implementations for testing custom storage backends
🔒 Security
- Built-in data sanitization for sensitive information
- Secure file logging with appropriate permissions
- No data collection or transmission to external services
- Privacy-focused design with local-only logging by default