flutter_logging_service 0.2.0 copy "flutter_logging_service: ^0.2.0" to clipboard
flutter_logging_service: ^0.2.0 copied to clipboard

A comprehensive logging service for Flutter apps with file persistence, log aggregation, crash tracking, sessions, masking, and isolate-backed writes.

Changelog #

All notable changes to this project will be documented in this file.

0.2.0 - 2026-08-06 #

Added #

  • LogFileStore abstraction with queued IO, memory/stub (web), and isolate-backed writers
  • Sessions via startSession() / sessionStartExtra (file lines keep [LEVEL] markers; sid= suffix)
  • Masking with MaskingRule, addMaskingRule(s), and opt-in enableDefaultMasking
  • Real-time stream: LoggingService.stream of LogRecord (post-mask, pre-aggregation)
  • In-memory ring buffer (bufferLimit, default 2000) for web / live viewer fallback
  • Zip export (exportLogsZip), searchLogs, and reusable LogViewer widget
  • Retention: logsRetention config + clearLogsBefore(Duration)
  • Lifecycle: flush(), dispose(), setMinLogLevel(), re-init after dispose
  • Backpressure: writeQueueCapacity and optional per-level quotas (never drops error/severe)
  • GitHub Actions CI (dart analyze + flutter test)
  • Real unit tests (levels, ring buffer, masking, sessions, aggregation, export, dispose)

Fixed #

  • Crash last-seen timestamp parsed from CRASH [<iso>] instead of DateTime.now()
  • Unconditional dart:io removed from the public orchestration path (web-safe stub store)
  • Partial init failure cleans up before console/memory fallback

Changed #

  • Relabeled previously shipped aggregation work as 0.1.1 (matches git tag v0.1.1)
  • Console printing is now internal (ANSI [appName] [LEVEL] …); no easy_logger dependency
  • Console muted in release by default (enableConsoleInRelease); profile stays on
  • SEVERE still writes [SEVERE] to files but prints as [ERROR] on console (easy_logger parity)

Removed #

  • Dependency on easy_logger

0.1.1 - 2026-02-13 #

Improved #

  • Aggregation no longer delays unique log messages: Unique messages are now logged to console immediately; only repeated messages are buffered for aggregation. File-level aggregation still applies to all messages.
  • Stack trace parsing skipped in release mode: The Log helper no longer calls StackTrace.current in release builds, reducing overhead.
  • Pre-compiled regex patterns in Log helper for faster component detection.
  • Aggregation buffer capped at 100 entries to prevent unbounded growth during heavy logging bursts.

Removed #

  • Removed dead sendLogsToGitHub() method (always returned false). formatLogsForGitHub() is kept for bug-report formatting.

Documentation #

  • Added library-level doc comment to the barrel export file.
  • Updated README with performance notes and aggregation behavior.

0.1.0+1 - 2025-01-15 #

Added #

  • Initial release of flutter_logging_service package
  • LoggingService with file persistence and log rotation
  • LogHelper for convenient static logging with auto component detection
  • LoggableMixin for automatic component detection in classes
  • LoggingConfig for customizable configuration
  • Support for log aggregation to reduce noise
  • Separate crash log file for severe errors
  • Cross-platform support (Android, iOS, Linux, macOS, Windows, Web)
0
likes
160
points
50
downloads

Documentation

API reference

Publisher

verified publishershenepoy.com

Weekly Downloads

A comprehensive logging service for Flutter apps with file persistence, log aggregation, crash tracking, sessions, masking, and isolate-backed writes.

Repository (GitHub)
View/report issues

License

MPL-2.0 (license)

Dependencies

archive, flutter, path, path_provider

More

Packages that depend on flutter_logging_service