#!/usr/bin/ruby
require 'puppet'
if defined?(ARGV)
filename = ARGV.first
if defined?(filename)
report = YAML.load_file(filename)
print "Report for : "
puts report.host
print "Started : "
puts report.time
print "Log count: "
puts report.logs.size
print "Metrics count: "
puts report.metrics.size
print "Resource Status count: "
puts report.resource_statuses.size
print "Status: "
puts report.status
report.logs.each do |logg|
puts "LOG ---------------------------------------------"
if logg.file
print "File: "
puts logg.file
end
if logg.line
print "Line: "
puts logg.line
end
print "Level: "
puts logg.level
print "Message: "
puts logg.message
print "Source: "
puts logg.source
print "Tags: "
puts logg.tags.join(" ")
print "Time: "
puts logg.time
end
report.resource_statuses.keys.each do |kk|
if report.resource_statuses["#{kk}"].change_count > 0
puts "RESOURCE STATUS ===================================="
puts "#{kk} "
report.resource_statuses["#{kk}"].events.each do |line|
print "property: "
puts line.property
print "message: "
puts line.message
print "name: "
puts line.name
print "status: "
puts line.status
print "when: "
puts line.time
end
end
end
puts "-------------------------------------------------"
end
end