Module: Karafka

Extended by:
Envlogic
Defined in:
lib/karafka.rb,
lib/karafka/app.rb,
lib/karafka/cli.rb,
lib/karafka/errors.rb,
lib/karafka/server.rb,
lib/karafka/status.rb,
lib/karafka/fetcher.rb,
lib/karafka/process.rb,
lib/karafka/version.rb,
lib/karafka/cli/base.rb,
lib/karafka/cli/flow.rb,
lib/karafka/cli/info.rb,
lib/karafka/contracts.rb,
lib/karafka/setup/dsl.rb,
lib/karafka/cli/server.rb,
lib/karafka/cli/console.rb,
lib/karafka/cli/install.rb,
lib/karafka/setup/config.rb,
lib/karafka/base_consumer.rb,
lib/karafka/cli/missingno.rb,
lib/karafka/code_reloader.rb,
lib/karafka/params/params.rb,
lib/karafka/routing/proxy.rb,
lib/karafka/routing/topic.rb,
lib/karafka/attributes_map.rb,
lib/karafka/base_responder.rb,
lib/karafka/routing/router.rb,
lib/karafka/backends/inline.rb,
lib/karafka/params/metadata.rb,
lib/karafka/routing/builder.rb,
lib/karafka/contracts/config.rb,
lib/karafka/responders/topic.rb,
lib/karafka/connection/client.rb,
lib/karafka/helpers/inflector.rb,
lib/karafka/connection/builder.rb,
lib/karafka/consumers/includer.rb,
lib/karafka/patches/ruby_kafka.rb,
lib/karafka/persistence/client.rb,
lib/karafka/persistence/topics.rb,
lib/karafka/responders/builder.rb,
lib/karafka/connection/listener.rb,
lib/karafka/consumers/callbacks.rb,
lib/karafka/params/params_batch.rb,
lib/karafka/consumers/responders.rb,
lib/karafka/routing/topic_mapper.rb,
lib/karafka/helpers/class_matcher.rb,
lib/karafka/params/batch_metadata.rb,
lib/karafka/persistence/consumers.rb,
lib/karafka/connection/api_adapter.rb,
lib/karafka/instrumentation/logger.rb,
lib/karafka/params/builders/params.rb,
lib/karafka/routing/consumer_group.rb,
lib/karafka/consumers/single_params.rb,
lib/karafka/helpers/multi_delegator.rb,
lib/karafka/instrumentation/monitor.rb,
lib/karafka/routing/consumer_mapper.rb,
lib/karafka/consumers/batch_metadata.rb,
lib/karafka/contracts/consumer_group.rb,
lib/karafka/helpers/config_retriever.rb,
lib/karafka/contracts/responder_usage.rb,
lib/karafka/connection/batch_delegator.rb,
lib/karafka/connection/message_delegator.rb,
lib/karafka/contracts/server_cli_options.rb,
lib/karafka/params/builders/params_batch.rb,
lib/karafka/serialization/json/serializer.rb,
lib/karafka/contracts/consumer_group_topic.rb,
lib/karafka/params/builders/batch_metadata.rb,
lib/karafka/setup/configurators/water_drop.rb,
lib/karafka/instrumentation/stdout_listener.rb,
lib/karafka/serialization/json/deserializer.rb,
lib/karafka/assignment_strategies/round_robin.rb,
lib/karafka/instrumentation/proctitle_listener.rb

Overview

Karafka module namespace

Defined Under Namespace

Modules: AssignmentStrategies, AttributesMap, Backends, Connection, Consumers, Contracts, Errors, Helpers, Instrumentation, Params, Patches, Persistence, Responders, Routing, Serialization, Setup Classes: App, BaseConsumer, BaseResponder, Cli, CodeReloader, Fetcher, Process, Server, Status

Constant Summary collapse

VERSION =

Current Karafka version

'1.4.4'

Class Method Summary collapse

Class Method Details

.boot_fileString

Note:

By default it is a file called ‘karafka.rb’ but it can be specified as you wish if you have Karafka that is merged into a Sinatra/Rails app and karafka.rb is taken. It will be used for console/consumers/etc

Returns path to a default file that contains booting procedure etc.

Examples:

Standard only-Karafka case

Karafka.boot_file #=> '/home/app_path/karafka.rb'

Non standard case

KARAFKA_BOOT_FILE='/home/app_path/app.rb'
Karafka.boot_file #=> '/home/app_path/app.rb'

Returns:

  • (String)

    path to a default file that contains booting procedure etc



61
62
63
# File 'lib/karafka.rb', line 61

def boot_file
  Pathname.new(ENV['KARAFKA_BOOT_FILE'] || File.join(Karafka.root, 'karafka.rb'))
end

.core_rootString

Returns path to Karafka gem root core.

Returns:

  • (String)

    path to Karafka gem root core



48
49
50
# File 'lib/karafka.rb', line 48

def core_root
  Pathname.new(File.expand_path('karafka', __dir__))
end

.gem_rootString

Returns root path of this gem.

Returns:

  • (String)

    root path of this gem



38
39
40
# File 'lib/karafka.rb', line 38

def gem_root
  Pathname.new(File.expand_path('..', __dir__))
end

.loggerLogger

Returns logger that we want to use. Will use ::Karafka::Logger by default.

Returns:

  • (Logger)

    logger that we want to use. Will use ::Karafka::Logger by default



28
29
30
# File 'lib/karafka.rb', line 28

def logger
  @logger ||= App.config.logger
end

.monitor::Karafka::Monitor

Returns monitor that we want to use.

Returns:

  • (::Karafka::Monitor)

    monitor that we want to use



33
34
35
# File 'lib/karafka.rb', line 33

def monitor
  @monitor ||= App.config.monitor
end

.rootString

Returns Karafka app root path (user application path).

Returns:

  • (String)

    Karafka app root path (user application path)



43
44
45
# File 'lib/karafka.rb', line 43

def root
  Pathname.new(ENV['KARAFKA_ROOT_DIR'] || File.dirname(ENV['BUNDLE_GEMFILE']))
end