Class: Sensu::Package::Metrics::PackageLogReader::LineFound

Inherits:
Object
  • Object
show all
Defined in:
lib/sensu/package/metrics/package_log_reader.rb

Instance Method Summary collapse

Constructor Details

#initialize(package, line) ⇒ LineFound

Returns a new instance of LineFound.



39
40
41
42
# File 'lib/sensu/package/metrics/package_log_reader.rb', line 39

def initialize(package, line)
  @package = package
  @line = line
end

Instance Method Details

#analyseObject



48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
# File 'lib/sensu/package/metrics/package_log_reader.rb', line 48

def analyse
  @line.scan(/(.+) status installed #{@package} (\d+)/) do |timestamp, version| 
    unix_timestamp = DateTime.strptime(timestamp, "%Y-%m-%d %H:%M:%S").to_time.to_i
    return {
      package: @package,
      status: 'installed',
      version: version.to_i,
      installed_at: unix_timestamp
    }
  end
  return {
      package: @package,
      status: 'unknown'
  }
end

#to_hObject



44
45
46
# File 'lib/sensu/package/metrics/package_log_reader.rb', line 44

def to_h
  analyse
end