Sha256: d706352ba0bbadc14c724778b6424ae946b4a4d1420496a10344e0e50f998491
Contents?: true
Size: 1.62 KB
Versions: 1
Compression:
Stored size: 1.62 KB
Contents
# frozen_string_literal: true %w[ yaml rdkafka karafka/core karafka/core/version karafka/core/helpers/time karafka/core/monitoring karafka/core/monitoring/event karafka/core/monitoring/monitor karafka/core/monitoring/notifications karafka/core/monitoring/statistics_decorator karafka/core/configurable karafka/core/configurable/leaf karafka/core/configurable/node karafka/core/contractable/contract karafka/core/contractable/result karafka/core/contractable/rule karafka/core/instrumentation karafka/core/instrumentation/callbacks_manager karafka/core/taggable karafka/core/taggable/tags karafka/core/patches/rdkafka/bindings ].each { |dependency| require dependency } # Karafka framework main namespace module Karafka end # Patch rdkafka ::Rdkafka::Bindings.include(::Karafka::Core::Patches::Rdkafka::Bindings) instrumentation = ::Karafka::Core::Instrumentation rd_config = ::Rdkafka::Config # Rdkafka uses a single global callback for things. We bypass that by injecting a manager for # each callback type. Callback manager allows us to register more than one callback # @note Those managers are also used by Karafka for consumer related statistics rd_config.statistics_callback = instrumentation.statistics_callbacks rd_config.error_callback = instrumentation.error_callbacks rd_config.oauthbearer_token_refresh_callback = instrumentation.oauthbearer_token_refresh_callbacks # This loads librdkafka components into memory prior to initializing the client. # This mitigates macos forking issues. # @see https://github.com/confluentinc/librdkafka/issues/4590 ::Rdkafka::Bindings.rd_kafka_global_init
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
karafka-core-2.4.6 | lib/karafka-core.rb |