Sha256: 6a92cb26b6532508b16c9ac8f1986bde636bf60ac4415e2653d8a1709c820fb6

Contents?: true

Size: 944 Bytes

Versions: 1

Compression:

Stored size: 944 Bytes

Contents

#!/usr/bin/env ruby
# -*- coding: utf-8 -*-
require 'djb/daemontools/multilog/logs'
module Djb
  module Daemontools
    module Multilog
      class Collector
        attr_accessor :service_dir,:lines
        alias :directory :service_dir
        alias :directory= :service_dir=

        def initialize(dir = "/service")
          @lines = 100
          @service_dir = dir
        end

        def collect
          all = Logs.new
          glob_pattern = @service_dir + "/*/log/main/current"
          Dir.glob(glob_pattern).each do |file| 
            all += Logs.new.load(file,@lines)
          end
          all.sort! do |a,b|
            a.time <=> b.time
          end
          # all[all.length - @lines..-1]
          lines = [@lines,all.length].min
          all[-lines..-1]
        end
      end
      
    end
  end
end
=begin
#collector = Djb::Daemontools::Multilog::Collector.new("/Users/tumf/service")
#puts collector.collect
=end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
multilog-collector-0.3.3 lib/djb/daemontools/multilog/collector.rb