class LogfileInterval::Interval
Attributes
end_time[R]
length[R]
parser[R]
size[R]
start_time[R]
Public Class Methods
new(end_time, length, parser_columns)
click to toggle source
# File lib/logfile_interval/interval.rb, line 8 def initialize(end_time, length, parser_columns) @end_time = end_time @start_time = end_time - length @length = length @parser = parser @size = 0 @aggregators = AggregatorSet.new(parser_columns) end
Public Instance Methods
[](name)
click to toggle source
# File lib/logfile_interval/interval.rb, line 18 def [](name) @aggregators[name] end
add_record(record)
click to toggle source
# File lib/logfile_interval/interval.rb, line 29 def add_record(record) raise OutOfRange, 'too recent' if record.time>@end_time raise OutOfRange, 'too old' if record.time<=@start_time @size += 1 @aggregators.add(record) end
to_hash()
click to toggle source
# File lib/logfile_interval/interval.rb, line 22 def to_hash h = @aggregators.to_hash h[:start_time] = self.start_time h[:end_time] = self.end_time h end