gems karafka 2.0.24
v2.0.24

latest releases: 2.4.17, 2.4.16, 2.4.15...
2 years ago
  • [Feature] Provide out of the box encryption support for Pro.
  • [Improvement] Add instrumentation upon #pause.
  • [Improvement] Add instrumentation upon retries.
  • [Improvement] Assign #id to consumers similar to other entities for ease of debugging.
  • [Improvement] Add retries and pausing to the default LoggerListener.
  • [Improvement] Introduce a new final terminated state that will kick in prior to exit but after all the instrumentation and other things are done.
  • [Improvement] Ensure that state transitions are thread-safe and ensure state transitions can occur in one direction.
  • [Improvement] Optimize status methods proxying to Karafka::App.
  • [Improvement] Allow for easier state usage by introducing explicit #to_s for reporting.
  • [Improvement] Change auto-generated id from SecureRandom#uuid to SecureRandom#hex(6)
  • [Improvement] Emit statistic every 5 seconds by default.
  • [Improvement] Introduce general messages parser that can be swapped when needed.
  • [Fix] Do not trigger code reloading when consumer_persistence is enabled.
  • [Fix] Shutdown producer after all the consumer components are down and the status is stopped. This will ensure, that any instrumentation related Kafka messaging can still operate.

Upgrade notes

If you want to disable librdkafka statistics because you do not use them at all, update the kafka statistics.interval.ms setting and set it to 0:

class KarafkaApp < Karafka::App
  setup do |config|
    # Other settings...
    config.kafka = {
      'statistics.interval.ms': 0
    }
  end
end

Don't miss a new karafka release

NewReleases is sending notifications on new releases.