Skip to content

Releases: logfellow/logstash-logback-encoder

logstash-logback-encoder-6.6

30 Dec 20:02
logstash-logback-encoder-6.6
d9eee73

Choose a tag to compare

Enhancements

  • #454/#457 Flush Flushable appenders at the end of a batch (@brenuart)
  • #456/#457 Make DelegatingAsyncDisruptorAppender more resilient to exceptions thrown by child appenders (@brenuart)

Bug fixes

  • #455/#457 Possible NullPointerException in DelegatingAsyncDisruptorAppender (@brenuart)

Documentation Updates

Dependency Updates

Usage Dependency Old Version New Version
Runtime jackson 2.11.3 2.12.0
Test-time junit 4.13.1 5.7.0

logstash-logback-encoder-6.5

28 Nov 17:44
logstash-logback-encoder-6.5
7445ecd

Choose a tag to compare

Enhancements

Bug fixes

Documentation Updates

  • #417 Correct example XML for specifying a custom ValueMaskSupplier (@goober)
  • #439 Added stacktrace field name adjustment example (@mariodavid

Dependency Updates

Usage Dependency Old Version New Version
Runtime jackson 2.11.0 2.11.3
Runtime (shaded) commons-lang3 3.10 3.11
Compile-time animal-sniffer-maven-plugin 1.18 1.19
Compile-time maven-bundle-plugin 4.2.1 5.1.1
Compile-time maven-shade-plugin 3.2.3 3.2.4
Test-time junit 4.13 4.13.1
Test-time assertj 3.16.1 3.18.1
Test-time mockito 3.3.3 3.6.28

logstash-logback-encoder-6.4

30 May 23:13
logstash-logback-encoder-6.4
37697dc

Choose a tag to compare

Enhancements

Bug fixes

Documentation Updates

Dependency Updates

Usage Dependency Old Version New Version
Runtime jackson 2.10.1 2.11.0
Runtime uuid-generator 3.2.0 4.0.1
Runtime (shaded) commons-lang3 3.9 3.10
Compile-time maven-source-plugin 3.2.0 3.2.1
Compile-time maven-javadoc-plugin 3.1.1 3.2.0
Compile-time maven-shade-plugin 3.2.1 3.2.3
Test-time junit 4.12 4.13
Test-time assertj 3.14.0 3.16.1
Test-time mockito 3.2.0 3.3.3

logstash-logback-encoder-6.3

07 Dec 04:11
logstash-logback-encoder-6.3
a712351

Choose a tag to compare

Enhancements

  • #378 / #382 Masking support (with inspiration from @rusucosmin)
  • #363 jackson upgrades (@sdudzin )
  • #374 Added support for a line separator in CompositeJsonLayout (defaults to no line separator for backwards compitability, but can now be configured with a line separator like CompositeJsonEncoder)
  • #380 Set Automatic-Module-Name to logstash.logback.encoder in MANIFEST.MF
  • #379 Switch from travis ci to github actions (releases are now automated!)
    • Switch from oss-parent to nexus-staging-maven-plugin
    • Use mvnw for building
  • Added issue templates

Documentation Updates

Dependency Updates

Usage Dependency Old Version New Version
Runtime jackson 2.9.9.20190807 2.10.1
Compile-time maven-jar-plugin 3.1.2 3.2.0
Compile-time maven-source-plugin 3.1.0 3.2.0
Compile-time maven-javadoc-plugin 3.0.0 3.1.1
Compile-time maven-gpg-plugin n/a 1.6
Compile-time nexus-staging-maven-plugin n/a 1.6.8
Test-time assertj 3.13.2 3.14.0
Test-time mockito 2.28.2 3.2.0

logstash-logback-encoder-6.2

08 Sep 07:28

Choose a tag to compare

Enhancements

  • #341 Pro-actively reopen the connection when the socket reader detects the connection has been closed instead of waiting for the next event
  • #343 Introduce writeTimeout to detect stuck TCP write operations, and reopen the connection
  • #344 Add getConnectionDestination() to TCP appenders to provide visibility into the currently connected destination
  • #346 Async appenders now flush delegate OutputStreamAppenders at the end of each batch
  • #353 Don't block trying to publish a keep alive event if the ring buffer is full.
  • #357 Include all public packages from logstash-logback-encoder in OSGi Exported-Packages in manifest
  • #359 Update jackson-bom to 2.9.9.20190807, which updates jackson-databind to 2.9.9.3 to fix some deserialization security vulnerabilities (logstash-logback-encoder was not affected, since it does not deserialize JSON data) (@kubukoz)

Documentation Updates

  • #342 Clarified advantages/disadvantages of disabling write buffer
  • #345 Add required downcast in JsonFactoryDecorator example
  • #348 Mention in documentation that ShortenedThrowableConverter only applies to Throwables logged as extra arguments (e.g. not structured arguments or markers)
  • #358 Fixed xml tag in example (@agentgonzo)

Dependency Updates

Usage Dependency Old Version New Version
Runtime jackson 2.9.9 2.9.9.20190807
Compile-time maven-bundle-plugin 4.2.0 4.2.1
Test-time mockito 2.27.0 2.28.2
Test-time assertj 2.9.1 3.13.2

logstash-logback-encoder-6.1

15 Jun 20:05

Choose a tag to compare

  • #338 Deferred markers (Markers.defer(...)) are now memoized, so the same value is used when encoding for all appenders
  • #339 The default status listener registered by async appenders changed from logback's OnConsoleStatusListener to a custom status listener that only outputs warn/error status messages to standard out
  • #340 Marker references are now included when %marker is used in patterns

logstash-logback-encoder-6.0

03 Jun 04:04

Choose a tag to compare

Overview

Version 6.0 is a major release with several new features and bugfixes.

Several backwards incompatibilities were introduced (see section below). Most have the ability to revert to previous behavior via config changes if necessary.

Support for Java 1.7 has been removed. Java 1.8 or above is now required.

New Features

  • #80 Add UDP appender that can use any layout (LogstashUdpSocketAppender)
    Add UDP appender for AccessEvents (LogstashAccessUdpSocketAppender)
    Deprecate LogstashSocketAppender in favor of LogstashUdpSocketAppender
  • #127 Added FailureSummaryLoggingAppenderListener for logging a message after the first successfully logged event after a series of failures
  • #132 Auto-add console status listener in async appenders, so that errors are visible by default
  • #193 Avoid reconnection storm by reworking how reconnectionDelay works, and introducing PreferPrimaryDestinationConnectionStrategy.minConnectionTimeBeforePrimary
  • #201 Add ability for the pattern provider to omit fields whose values are empty (omitEmptyFields)
  • #274 Support non-JSON output in other Jackson dataformats (e.g. Smile, CBOR, YAML) via decorators
  • #326 Support adding additional providers to LogstashAccessEncoder
  • #327 / #328 (@brenuart) Trigger ssl handshake on connection establishment, to catch ssl handshake failures early
  • #330 (@brenuart) minor coding optimizations
  • #334 Support deferred Markers
  • #335 Support Marker aggregation and empty markers

Bug fixes

  • #336 Add newline at end of stacktrace truncated due to maxLength
  • #322 (@bwaldvogel) Fix typo in stack hash doc

Dependency version changes

Usage Dependency Old Version New Version
Runtime jackson 2.9.8 2.9.9
Runtime uuid-generator 3.1.5 3.2.0
Runtime (shaded) commons-lang 2.6 n/a
Runtime (shaded) commons-lang3 n/a 3.9
Compile-time animal-sniffer 1.17 1.18
Test-time mockito 2.23.4 2.27.0
Test-time commons-io 2.6 n/a

Backwards Incompatibilities

  • Support for Java 1.7 has been removed. Java 1.8 or above is now required.

  • For #80, LogstashSocketAppender has been deprecated in favor of LogstashUdpSocketAppender with a LogstashLayout

  • For #132, the async appenders (including the tcp appenders) will now add a logback OnConsoleStatusListener if no status listener has been registered. This provides a better out-of-the-box experience by ensuring error status messages are visible on the console by default.
    The automatic registering can be disabled by either registering a different logback status listener or by setting addDefaultStatusListener to false on the appender.

  • For #193, The preferPrimary connection strategy will now by default ensure a connection has been open for at least 10 seconds before preferring primary again.
    If a connection has been open less than 10 seconds, other secondary destinations will be attempted before trying primary again.
    To revert to the old behavior of always preferring primary, specify 0 seconds for the minConnectionTimeBeforePrimary as documented here

  • For #274, to support non-JSON output, a new default JsonFactory decorate(JsonFactory factory) method has been added to the JsonFactoryDecorator interface.
    The old MappingJsonFactory decorate(MappingJsonFactory factory) method has been made a default method, and has been deprecated.
    The new method is the preferred method of the interface. The old method will be removed in a future release.
    Any custom JsonFactoryDecorator implementations should change their implementation to the new method.

logstash-logback-encoder-5.3

22 Jan 00:17

Choose a tag to compare

  • #307 Add support for excluding markers via <includeTags>false</includeTags> (@ramsperger)
  • #311 Provide a way to access the fieldValue of SingleFieldAppendingMarker
  • #315 Allow Jackson ObjectMapper to scan for available modules on the classpath
  • #306 Remove usage of powermock
  • Updated license files so ASL 2.0 can be properly detected by github
  • Added warning to readme about prefix/suffix not working due to LOGBACK-1326 and logback PR#383

Upgrade Notes

  • As part of #315, logstash-logback-encoder will configure jackson to dynamically scan and find jackson modules available on the classpath. See Registering Jackson Modules for more info.
  • The Logback11Support class methods were changed from static methods to instance methods to allow for easier unit test mocking. Since this is an internal class, it should not affect end users

Dependency version changes

Usage Dependency Old Version New Version
Runtime jackson 2.9.6 2.9.8
Compile-time maven-compiler-plugin 2.3.2 3.8.0
Test-time mockito 2.9.0 2.23.4
Test-time powermock 1.7.3 removed

logstash-logback-encoder-5.2

05 Aug 00:17

Choose a tag to compare

  • #288 / #289 Move logback-core to provided scope (@yborovikov)
  • #295 Fix #tryJson when messages start with a number
  • #299
    • Allow SleepingWaitStrategy's retries and parkTimeNs to be configured
    • Added warning to README about CPU utilization of SleepingWaitStrategy.
    • added support for LiteTimeoutBlockingWaitStrategy
  • #294 Don't fill in stack trace in test exception (affects unit test only) (@kampka)

Dependency version changes

Usage Dependency Old Version New Version
Runtime jackson 2.9.5 2.9.6
Runtime uuid 3.1.4 3.1.5
Runtime (shaded) disruptor 3.3.8 3.4.2
Compile-time animal-sniffer 1.16 1.17
Test-time assertj 2.9.0 2.9.1

Additionally, logback-core dependency scope was changed from compile to provided (#288), and a note was added to the readme indicating that projects that use logstash-logback-encoder must also directly depend on either logback-classic or logback-access, which both transitively depend on logback-core

logstash-logback-encoder-5.1

30 Apr 04:37

Choose a tag to compare

  • #286 Add ability to output timestamp value as unix timestamps (number or string) (@peterjurkovic)
  • #279 / #285 Add ability to customize character escape codes (@fred84)
  • #283 Added more packages to OSGI exports (@redvasily)
  • #284 Update Jackson verson to 2.9.5 (@msymons)
  • #282 Fix bug that prevented configuring request header filters from logback xml
  • #276 Fix bug that prevented using global custom field provider within nested provider