Sha256: 6c294bbfe7f91cf59a98ccabbf257b6d0aaa5f241122ecb7b3cd065558a9bbdb

Contents?: true

Size: 925 Bytes

Versions: 13

Compression:

Stored size: 925 Bytes

Contents

# frozen_string_literals: true

module Lumberjack
  class Device
    # This is a logging device that forward log entries to multiple other devices.
    class Multi < Device
      def initialize(*devices)
        @devices = devices.flatten
      end

      def write(entry)
        @devices.each do |device|
          device.write(entry)
        end
      end

      def flush
        @devices.each do |device|
          device.flush
        end
      end

      def close
        @devices.each do |device|
          device.close
        end
      end

      def reopen(logdev = nil)
        @devices.each do |device|
          device.reopen(logdev = nil)
        end
      end

      def datetime_format
        @devices.detect(&:datetime_format).datetime_format
      end

      def datetime_format=(format)
        @devices.each do |device|
          device.datetime_format = format
        end
      end
    end
  end
end

Version data entries

13 entries across 13 versions & 3 rubygems

Version Path
op_connect-0.1.2 vendor/bundle/ruby/3.1.0/gems/lumberjack-1.2.8/lib/lumberjack/device/multi.rb
qiita_org-0.1.35 gems/ruby/2.7.0/gems/lumberjack-1.2.8/lib/lumberjack/device/multi.rb
qiita_org-0.1.34 gems/ruby/2.7.0/gems/lumberjack-1.2.8/lib/lumberjack/device/multi.rb
qiita_org-0.1.33 gems/ruby/2.7.0/gems/lumberjack-1.2.8/lib/lumberjack/device/multi.rb
qiita_org-0.1.32 gems/ruby/2.7.0/gems/lumberjack-1.2.8/lib/lumberjack/device/multi.rb
qiita_org-0.1.31 gems/ruby/2.7.0/gems/lumberjack-1.2.8/lib/lumberjack/device/multi.rb
qiita_org-0.1.30 gems/ruby/2.7.0/gems/lumberjack-1.2.8/lib/lumberjack/device/multi.rb
qiita_org-0.1.29 gems/ruby/2.7.0/gems/lumberjack-1.2.8/lib/lumberjack/device/multi.rb
qiita_org-0.1.28 gems/ruby/2.7.0/gems/lumberjack-1.2.8/lib/lumberjack/device/multi.rb
qiita_org-0.1.27 gems/ruby/2.7.0/gems/lumberjack-1.2.8/lib/lumberjack/device/multi.rb
qiita_org-0.1.26 gems/ruby/2.7.0/gems/lumberjack-1.2.8/lib/lumberjack/device/multi.rb
qiita_org-0.1.25 gems/ruby/2.7.0/gems/lumberjack-1.2.8/lib/lumberjack/device/multi.rb
lumberjack-1.2.8 lib/lumberjack/device/multi.rb