Class: Sensu::Package::Metrics::PackageLogReader
- Inherits:
-
Object
- Object
- Sensu::Package::Metrics::PackageLogReader
- Defined in:
- lib/sensu/package/metrics/package_log_reader.rb
Defined Under Namespace
Classes: LineFound, LineNotFound
Instance Method Summary collapse
- #find(package) ⇒ Object
- #find_line(package) ⇒ Object
-
#initialize(logfile) ⇒ PackageLogReader
constructor
A new instance of PackageLogReader.
Constructor Details
#initialize(logfile) ⇒ PackageLogReader
Returns a new instance of PackageLogReader.
6 7 8 |
# File 'lib/sensu/package/metrics/package_log_reader.rb', line 6 def initialize(logfile) @logfile = logfile end |
Instance Method Details
#find(package) ⇒ Object
10 11 12 13 14 15 16 17 |
# File 'lib/sensu/package/metrics/package_log_reader.rb', line 10 def find(package) line = find_line(package) if line.nil? LineNotFound.new(package) else LineFound.new(package, line) end end |
#find_line(package) ⇒ Object
19 20 21 22 |
# File 'lib/sensu/package/metrics/package_log_reader.rb', line 19 def find_line(package) pattern = "status installed #{package}" File.readlines(@logfile).select {|line| line.include?(pattern) }.last end |