class FFWD::Plugin::Log::Writer

Public Class Methods

new(core, prefix) click to toggle source
# File lib/ffwd/plugin/log/writer.rb, line 24
def initialize core, prefix
  @p = prefix ? "#{prefix} " : ""

  subs = []

  core.output.starting do
    log.info "Started (prefix: '#{@p}')"

    subs << core.output.event_subscribe do |e|
      log.info "Event: #{@p}#{JSON.dump(e.to_h)}"
    end

    subs << core.output.metric_subscribe do |m|
      log.info "Metric: #{@p}#{JSON.dump(m.to_h)}"
    end
  end

  core.output.stopping do
    log.info "Stopped"

    subs.each(&:unsubscribe).clear
  end
end