The Rails config now supports an entry_filter setting, which lets you pre-filter log entries before they get handed over to the formatter.
Implemented Sawmill::EntryProcessor::FilterByMessage.
The gemspec no longer includes the timestamp in the version, so that bundler can pull from github. (Reported by corneverbruggen)
The :local_time and :iso_8601_time arguments to Sawmill::EntryProcessor::Format didn’t have their advertised effect. Fixed.
The :emit_incomplete_records_on_finish argument to Sawmill::EntryProcessor::BuildRecords didn’t have its advertised effect. Fixed.
Fixed a few warnings.
Travis CI integration.
0.1.14 was inadvertently released before testing was complete. Fixed several stats logs issues.
Support for stats logs.
Rack middleware supports elapsed time attribute.
Rack middleware can run pre-request and post-request logging tasks.
A .gemspec file is now available for gem building and bundler git integration.
Cleaned up docs a little
A date-based rotater can now force log files to be written to by only one process. Useful in environments where you have an unknown number of processes(i.e. a Passenger-based deployment), each of which needs a separate log file.
Provided a Railtie for easy integration into a Rails 3 application.
The record_progname and attribute_level can now be set on a logger after creation.
Fixed a missing require.
Fixed a rotater issue that sometimes caused rotation to occur one record too late.
Some minor documentation cleanup.
Added Logger#level_group.
The rotater crashed when obtaining an IO handle under Ruby 1.9. Fixed.
In some cases (notably under Ruby 1.9), the default record ID generator created UUIDs that were twice as long as they should have been. Fixed.
API CHANGE: Reworked how string encoding is specified. Default encoding for both reading and writing is now ASCII-8BIT unless specified in the API or within the file as a parser directive.
Handle encoding errors more gracefully by replacing characters rather than raising exceptions.
Added a parser directive to set logfile encoding.
Versionomy is no longer a hard dependency– it is now used only if available.
API CHANGE: Renamed DateBasedLogFile options :prefix and :suffix to :path_prefix and :path_suffix
API CHANGE: Renamed ShiftingLogFile options :filepath and :max_logfile_size to :file_path and :max_file_size
Encoding can now be specified in file reading and writing methods (Rotaters and convenience interface methods)
API CHANGE: Renamed processor close methods to “finish” and introduced return value semantics for passing “final” information back up the processor tree.
API CHANGE: Renamed :dirname options to :basedir on both rotater strategies
API CHANGE: Renamed :filename option to :filepath on ShiftingLogFile
API CHANGE: Renamed :local_timezone option to :local_datestamps on DateBasedLogFile
API CHANGE: Renamed FilterBasicFields to FilterByBasicFields
Added FilterByBlock processors
Added CompileReport processors
Processors can now add custom methods to the processor building DSL.
Added a bunch of convenience methods to the toplevel Sawmill module.
Entries can be truncated at a particular length when formatting.
Records can compute and cache values.
Support length limits when formatting entries.
Fixed a few more bugs related to processors.
More work on the RDocs
Added multi-parser utility.
Fixed several bugs involving parsing and formatting.
Logger uses activesupport’s SecureRandom on Ruby 1.8 if available.
Initial test release