summaryrefslogtreecommitdiff
path: root/exe/killjoy-publisher
blob: 453ce0fdc10a84998ffb323d338c526fadc3ba09 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#!/usr/bin/env ruby

require "bundler/setup"
$LOAD_PATH << File.expand_path("../lib", File.dirname(__FILE__))
require "killjoy"

log_file = ENV.fetch("LOG_FILE", "spec/fixtures/nginx.log")
parser = Killjoy::LogParser.new

configuration = {
  amqp_uri: ENV.fetch("RABBITMQ_URL", "amqp://guest:guest@localhost:5672"),
  exchange: 'killjoy',
  exchange_type: 'x-modulus-hash',
}
message_bus = Killjoy::MessageBus.new(configuration)
Killjoy::Publisher.using(message_bus) do |publisher|
  log_file = File.join(Dir.pwd, log_file)
  lines = File.readlines(log_file)

  loop do
    lines.each do |line|
      publisher.publish(parser.parse(line))
    end
  end
end