Skip to content

Releases: resurfaceio/logger-go

v3.4.0

17 Jun 18:54
Compare
Choose a tag to compare

What's Changed

  • Feature - Add support for additional TLS config using new environment USAGE_LOGGERS variables:

    USAGE_LOGGERS_TLS_TIMEOUT: Time to wait for TLS Handshake. Zero means no timeout
    USAGE_LOGGERS_TLS_CUSTOM_CERT: TLS certificate filepath to assign custom CA (e.g. self-signed cert)
    USAGE_LOGGERS_TLS_INSECURE: Skip certificate verification

Full Changelog: v3.3.2...v3.4.0

v3.3.2

15 Dec 12:39
Compare
Choose a tag to compare

What's Changed

  • Bug Fix - Modify dispatcher method to use a ticker instead of a conditional block in order to perform automatic flushing of any remaining messages in the current message bundle buffer. By having a default case, the goroutine never gets to pause its execution and resources don't become available until after the program exits. From the spec:

    If there is no default case, the "select" statement blocks until at least one of the communications can proceed.

    A ticker prevents this issue by replacing the default case with another channel that blocks periodically.

Full Changelog: v3.3.1...v3.3.2

v3.3.1

02 Oct 20:03
Compare
Choose a tag to compare

This release is largely a result of tests performed by @kolin-newby and @monrax

What's Changed

  • Bug Fix - Modify stopDispatcher method to use additional stop channel, instead of attempting to close msgQueue. Attempting to close a channel from a different goroutine than the sender results in a race condition. This fix removes such condition.
  • Feature - Export BaseLogger.stopDispatcher functionality through HttpLogger.Stop method
  • Feature - Add time-based (1 sec) automatic flush of message bundles to dispatcher
  • Feature - Add support for additional custom environment USAGE_LOGGERS variables:
    • USAGE_LOGGERS_BODY_LIMIT: upper limit to HTTP request/response body bytes
    • USAGE_LOGGERS_BUNDLE_SIZE: NDJSON bundle threshold size, in bytes
    • USAGE_LOGGERS_MESSAGE_QUEUE_SIZE: Number of buffered messages in msgQueue
    • USAGE_LOGGERS_BUNDLE_QUEUE_SIZE: Number of buffered NDJSON bundles in submitQueue
  • Drop support for older versions of go that have reached their end of life (1.15, 1.16, 1.17)
  • Rollback magic bytes feature until its performance impact has been measured

Full Changelog: v3.2.3...v3.3.1

v3.2.3

21 Jul 23:14
Compare
Choose a tag to compare

What's Changed

  • Bug Fix by @kolin-newby and @monrax - Modify background worker goroutine to use channels instead of mutex locks as synchronization mechanism. This fixes memory runaway issue where queued messages end up in the heap, rapidly increasing its size, after a large amount of goroutines were parked waiting for the lock.
  • Feature by @monrax - Add magic bytes check to body reader wrapper, as well as support for multiple encodings.
  • Update copyrights by @RobDickinson - We are now Graylog! 🚀

Full Changelog: v3.2.2...v3.2.3

v3.2.2

22 May 12:17
Compare
Choose a tag to compare

What's Changed

  • Bug Fix by @monrax - Add decoding wrapper to body reader

Full Changelog: v3.2.1...v3.2.2

v3.2.1

16 Jan 20:48
Compare
Choose a tag to compare

What's Changed

Full Changelog: v3.2.0...v3.2.1

v3.2.0

12 Jan 15:48
Compare
Choose a tag to compare

What's Changed

  • Bug Fix by @monrax - handle unescaped semicolons in query string
  • Bug Fix by @monrax - body capture issue for requests with content-type: application/x-www-form-urlencoded
  • Dropped usage of log.Fatal
  • Update copyright statements

Full Changelog: v3.1.0...v3.2.0

v3.1.0

20 Jun 20:26
cf4cda9
Compare
Choose a tag to compare

What's Changed

  • chore(readme): update to v3 by @monrax

  • chore(readme): update pkg to v3 by @monrax

  • feat(HttpLoggerForMux): add overflow cap to response writer wrapper by @monrax

  • chore(HttpLoggerForMux): remove additional import by @monrax

  • feat(HttpMessage): check for forwarded address and add header to mess… @monrax

  • Update README by @RobDickinson

  • Update copyright by @RobDickinson

  • Omit idea files @RobDickinson

  • fix(HttpLogger): add key prefix for custom fields @monrax

Full Changelog: v3.0.0...v3.1.0

Version 3.0.0

08 Dec 23:37
620c658
Compare
Choose a tag to compare

What's Changed

Full Changelog: v2.0.1...v3.0.0

Version 2.0.1

08 Oct 23:20
b2ccc7d
Compare
Choose a tag to compare

What's Changed

  • Bug Fix by @kolin-newby in #63 - Fixed a bug in the way that the now perimeter was being passed to sendHttpMessage function from the HttpLoggerForMux that resulted in the logged time being incorrect (gibberish).

Full Changelog: v2.0.0...v2.0.1