Sha256: 3f63c067c04182c1d527cf79003d766f3cd6b439e8ff8b51f5fc5fcffcced24e
Contents?: true
Size: 1.57 KB
Versions: 2
Compression:
Stored size: 1.57 KB
Contents
require "octave/version" require "octave/configuration" require "octave/dispatcher/base" require "octave/dispatcher/logger" require "octave/payload" require "octave/agent" if defined?(Rails) require "octave/helpers/controller" require "octave/railtie" end module Octave #:nodoc: class << self attr_writer :config # Configures Octave. See <tt>Octave::Configuration</tt> for configuration # options. # # == Example # Octave.configure do |config| # config.logger = Rails.logger # end def configure self.config ||= Configuration.new yield(config) end # @return [Configuration] The current Octave configuration def config @config ||= Configuration.new end # Resets the configuration to the default def reset_config @config = nil end # Shortcut method to access <tt>Octave.config.logger</tt>. def logger Octave.config.logger end # Measure the performance of a block. # # == Example # Octave.measure("process-card") do # process_credit_card # end def measure(name, options = {}) payload = Payload.new(name, options) result = yield dispatch(payload.tap(&:done)) result end # Dispatches the payload to the current agent def dispatch(payload) agent.dispatch(payload) if agent.running? end # Starts the agent def start agent.start end # Stops the agent def stop agent.stop @agent = nil end private def agent @agent ||= Agent.new end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
octave-0.1.1 | lib/octave.rb |
octave-0.1.0 | lib/octave.rb |