lib/trifle/logger/configuration.rb in trifle-logger-0.1.4 vs lib/trifle/logger/configuration.rb in trifle-logger-0.2.0

- old
+ new

@@ -1,20 +1,31 @@ # frozen_string_literal: true module Trifle module Logger class Configuration - attr_accessor :tracer_klass, :callbacks + attr_accessor :tracer_klass, :callbacks, :bump_every def initialize @tracer_klass = Trifle::Logger::Tracer::Hash - @callbacks = { - wrapup: [] - } + @callbacks = { liftoff: [], bump: [], wrapup: [] } + @bump_every = 15.seconds end + def on_liftoff(tracer) + @callbacks.fetch(:liftoff, []).map do |c| + c.call(tracer) + end + end + + def on_bump(tracer) + @callbacks.fetch(:bump, []).map do |c| + c.call(tracer) + end + end + def on_wrapup(tracer) - @callbacks.fetch(:wrapup, []).each do |c| + @callbacks.fetch(:wrapup, []).map do |c| c.call(tracer) end end def on(event, &block)