Use new version of Vostok.Logging.Formatting
with ToString
exceptions rendering.
Used new ConcurrentBoundedQueue.TryWaitForNewItemsBatchAsync
method with delay to avoid thread pool issues.
Fixed bug with FileShare.Delete option and removal of file when using FileLog.
Described MaxFiles & MaxSize settings better.
Fixed MaxFiles = 0 documentation.
Added net6.0
target.
Added WriteSynchronously
and WaitIfQueueIsFull
settings to avoid log-events losing.
Enabled UseSeparateFileOnConflict
by default.
- Fixed memory leak
- Added
FileLogSettings
cache to protect from frequentlogSettingsProvider
calls. - Now it's possible to refresh all settings in all caches through
RefreshSettings
method.
- Default
FileShare
mode changed toRead
- Added
UseSeparateFileOnConflict
setting
Optimized rendering of unstructured log events without actual templating in messages.
FileLog internals no longer retain references to LogEvents that have already been written.
Customizable separator between base log file path and rolling strategy suffix.
Slight performance improvements.
Now using AppDomain.CurrentDomain.BaseDirectory
as the base to resolve relative paths.
Implemented #11
Fixed lowerCamelCase WellKnownProperties
.
Fixed #9
FileLog.Log now does not write events with disabled log levels.
- Breaking change: ForContext() is now hierarchical.
- FileLog no longer allows to specify file paths pointing to directories.
- FileLog's resources (such as file handle) will now eventually be recycled if it's leaked without being disposed of.
- FileLog.Dispose() now also performs a Flush() call if anything has been written by this log instance.
- Time-based rolling strategy now won't create empty files for periods when there were no log records.
- FileLog now creates all the directories on the way to log file (#5).
- RollingUpdateCooldown was renamed to FileSettingsUpdateCooldown to indicate that it's not exclusively purposed for rolling settings.
Initial prerelease.