module Octopus::LogSubscriber

Public Class Methods

included(base) click to toggle source
# File lib/octopus/log_subscriber.rb, line 4
def self.included(base)
  base.send(:attr_accessor, :octopus_shard)

  base.send :alias_method, :sql_without_octopus_shard, :sql
  base.send :alias_method, :sql, :sql_with_octopus_shard

  base.send :alias_method, :debug_without_octopus_shard, :debug
  base.send :alias_method, :debug, :debug_with_octopus_shard
end

Public Instance Methods

debug_with_octopus_shard(msg) click to toggle source
# File lib/octopus/log_subscriber.rb, line 19
def debug_with_octopus_shard(msg)
  conn = octopus_shard ? color("[Shard: #{octopus_shard}]", ActiveSupport::LogSubscriber::GREEN, true) : ''
  debug_without_octopus_shard(conn + msg)
end
sql_with_octopus_shard(event) click to toggle source
# File lib/octopus/log_subscriber.rb, line 14
def sql_with_octopus_shard(event)
  self.octopus_shard = event.payload[:octopus_shard]
  sql_without_octopus_shard(event)
end