Sha256: 9e13507f72836710ac8931ac32c62c7b769d35eff87f8cb4f6908200812f63cb

Contents?: true

Size: 465 Bytes

Versions: 4

Compression:

Stored size: 465 Bytes

Contents

require 'semlogr/formatters/text_formatter'

module Semlogr
  module Sinks
    class File
      def initialize(file, shift_age: nil, shift_size: nil, formatter: nil)
        @logdev = ::Logger::LogDevice.new(file, shift_age: shift_age, shift_size: shift_size)
        @formatter = formatter || Formatters::TextFormatter.new
      end

      def emit(log_event)
        output = @formatter.format(log_event)
        @logdev.write(output)
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
semlogr-0.1.3 lib/semlogr/sinks/file.rb
semlogr-0.1.2 lib/semlogr/sinks/file.rb
semlogr-0.1.1 lib/semlogr/sinks/file.rb
semlogr-0.1.0 lib/semlogr/sinks/file.rb