flex_logger_file 1.0.3
flex_logger_file: ^1.0.3 copied to clipboard
File logging provider for FlexLogger - writes logs to local files with rotation support
1.0.3 #
- Added optional
dateFormatparameter toFileFormatter,SingleFileStrategy, andFileLoggerProvider.singleFile(). - Added
providerIdparameter torotating()andtimeBased()factory constructors. SingleFileStrategycleanup uses streaming I/O for better memory efficiency.dispose()in all strategies now awaits in-progress operations before teardown.- Improved error recovery in
TimeBasedFileStrategyfile switches. - Re-exported
DateFormatfrom barrel file.
1.0.1 #
FileFormatteroutput is now pipe-separated with fixed-width level columns;errorandcriticalentries are wrapped in─separator lines.SingleFileStrategyandRotatingFileStrategynow useutf8.encodefor accurate byte-count tracking instead ofString.length.- Breaking:
RotatingFileStrategyremoveddirectoryPathandfileNameconstructor parameters — usefilePathinstead. - Breaking:
FileObserverremovedlogFilePathgetter andwatchLogFile()method — use the strategy'swatchLogFile()directly. SingleFileStrategyremoved the internalFileSystemEventwatcher; cleanup is now triggered only by write frequency.FileObservercallbacks (onLog,onException,onError) updated toFuture<void>to matchFlexObserverchanges.TimeBasedFileStrategyusespath.joinfor file path construction.
1.0.0 #
- Initial release
- FileLoggerProvider implementing
LoggerProvider: default constructor with customFileStrategy; factory constructorssingleFile,rotating,timeBased; optionalformatter,filter,providerId. - FileObserver (FlexObserver): writes logs via
FileStrategy;initialize(),dispose(). - FileFormatter implementing
LogFormatter: format[YYYY-MM-DD HH:MM:SS.mmm] [LEVEL] message; error and stack trace (stack trace abbreviated if > 1000 chars). - FileStrategy (abstract):
initialize(),write(String),dispose(),currentLogFilePath. - SingleFileStrategy: single file;
filePath?; optionalmaxFileSize,maxAge,cleanupCheckInterval; buffers during cleanup; timestamp-based line filtering for age/size; default path<documents>/app.log. - RotatingFileStrategy: size-based rotation;
filePath?;maxFileSize(default 10 MB),maxBackupCount(default 5); current file renamed to.1,.2, …; buffers during rotation; no logs lost; default path<documents>/app.log. - TimeBasedFileStrategy: one file per day;
directoryPath?,fileNamePattern({prefix},{date}),filePrefix; optionalmaxAge,maxFiles; buffers during file switch. - Optional per-provider filter (e.g.
MinLevelFilter); defaultAcceptAllFilter. - Auto creation of log directories by all strategies.