Sha256: bbc33455010a7713764716aca95e81036e9b4a9f5cbc97459048ccbaf01e995e
Contents?: true
Size: 1.42 KB
Versions: 1
Compression:
Stored size: 1.42 KB
Contents
module Skylight # TODO: Handle filtering out notifications that we don't care about class Subscriber def self.register!(config=Config.new) ActiveSupport::Notifications.subscribe nil, new(config) end def initialize(config) @config = config end def start(name, id, payload) return unless trace = Trace.current name, title, desc, payload = Normalize.normalize(trace, name, payload) if name != :skip logger.debug("[SKYLIGHT] START: #{name} (#{title}, \"#{desc}\")") logger.debug("[SKYLIGHT] > #{payload.inspect}") else logger.debug("[SKYLIGHT] START: skipped") end trace.start(name, title, desc, payload) end def finish(name, id, payload) return unless trace = Trace.current logger.debug("[SKYLIGHT] END") trace.stop end def measure(name, id, payload) return unless trace = Trace.current name, title, desc, payload = Normalize.normalize(trace, name, payload) if name != :skip logger.debug("[SKYLIGHT] MEASURE: #{name} (#{title}, \"#{desc}\")") logger.debug("[SKYLIGHT] > #{payload.inspect}") else logger.debug("[SKYLIGHT] MEASURE: skipped") end trace.record(name, title, desc, payload) end private def controller_action(payload) "#{payload[:controller]}##{payload[:action]}" end def logger @config.logger end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
skylight-0.0.7 | lib/skylight/subscriber.rb |