Commit a203eca
Changed files (2)
app
workers
lib
tasks
app/workers/events_worker.rb
@@ -1,9 +1,13 @@
+require 'json'
+
class EventsWorker
include Sneakers::Worker
from_queue "dashboard.events", env: nil
- def work(raw_post)
- Event.create!(raw_post)
+ def work(event_json)
+ logger.info event_json
+ event = Event.create!(JSON.parse(event_json))
+ logger.info("Create Event: #{event.id}")
ack!
end
end
lib/tasks/rabbitmq.rake
@@ -0,0 +1,18 @@
+namespace :rabbitmq do
+ desc "setup rabbitmq routing"
+ task setup: :environment do
+ require "bunny"
+ connection = Bunny.new
+ connection.start
+ channel = connection.create_channel
+
+ # create exchange
+ exchange = channel.fanout("malwer.events")
+
+ # get or create queue (note the durable setting)
+ queue = channel.queue("dashboard.events", durable: true)
+ # bind queue to exchange
+ queue.bind("malwer.events")
+ connection.close
+ end
+end