Sha256: 508f4d6bfd2df8173621386e5737d5a27092b55c6df005f452c72a910ddeb0bf
Contents?: true
Size: 1.2 KB
Versions: 2
Compression:
Stored size: 1.2 KB
Contents
require 'instrumental/agent' require 'instrumental/configuration' require 'instrumental/intervalometer' require 'instrumental/railtie' if defined?(::Rails) module Instrumental @config = Configuration.new def self.configure yield @config end def self.boot! if @config.enabled? if defined?(PhusionPassenger) PhusionPassenger.on_event(:starting_worker_process) do @config.logger.debug('Starting a new worker process') Agent.instance.setup_and_run end PhusionPassenger.on_event(:stopping_worker_process) do @config.logger.debug('Killing worker process') Agent.instance.stop end else @config.logger.debug('Starting a new worker process') Agent.instance.setup_and_run end end end def self.config @config end def self.count(name, value=1) Agent.instance.report(:count, name, value) end def self.measure(name, value) Agent.instance.report(:measure, name, value) end def self.timer(name) start_time = Time.now yield self.measure(name, (Time.now - start_time) * 1000) # milliseconds end def self.milestone(name) Agent.instance.milestone(name) end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
instrumental-0.1.9 | lib/instrumental.rb |
instrumental-0.1.8 | lib/instrumental.rb |