Sha256: 6b4c06ea1d7e75a2074dd1d4e630d06bf297ce265860fe49fc539d5a56dd5105

Contents?: true

Size: 703 Bytes

Versions: 3

Compression:

Stored size: 703 Bytes

Contents

require "bundler/setup"
require "glass_octopus"

app = GlassOctopus.build do
  use GlassOctopus::Middleware::CommonLogger

  run Proc.new { |ctx|
    puts "Got message: #{ctx.message.key} => #{ctx.message.value}"
  }
end

def array_from_env(key, default:)
  return default unless ENV.key?(key)
  ENV.fetch(key).split(",").map(&:strip)
end

GlassOctopus.run(app) do |config|
  config.logger = Logger.new(STDOUT)

  config.adapter :ruby_kafka do |kafka|
    kafka.broker_list = array_from_env("KAFKA_BROKER_LIST", default: %w[localhost:9092])
    kafka.topic       = ENV.fetch("KAFKA_TOPIC", "mytopic")
    kafka.group_id    = ENV.fetch("KAFKA_GROUP", "mygroup")
    kafka.client_id   = "myapp"
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
glass_octopus-2.2.0 example/basic.rb
glass_octopus-2.1.0 example/basic.rb
glass_octopus-2.0.0 example/basic.rb