Class: Prenus::Output::Hostinfoout
- Defined in:
- lib/output/hostinfoout.rb
Instance Method Summary collapse
-
#initialize(events, hosts, options) ⇒ Object
constructor
Initialises the Hostinfoout class into an object.
-
#run ⇒ Object
Run the Hostinfoout class - this will generate a simple CSV output of applicable host information.
Constructor Details
#initialize(events, hosts, options) ⇒ Object
Initialises the Hostinfoout class into an object
21 22 23 |
# File 'lib/output/hostinfoout.rb', line 21 def initialize(events,hosts,) super end |
Instance Method Details
#run ⇒ Object
Run the Hostinfoout class - this will generate a simple CSV output of applicable host information
34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 |
# File 'lib/output/hostinfoout.rb', line 34 def run #File.open(@options[:outputdir] + "/prenus.glow", 'w') do |f| @events.each do |k,v| unless @options[:filter].nil? next unless @options[:filter].include?(k.to_s) end # The graphs were getting too mental, so I hard coded to ignore everything except High and Critical findings next if v[:severity].to_i < @options[:severity].to_i impacted_hosts = [] v[:ports].each do |k2,v2| v2[:hosts].each do |h,w| impacted_hosts << h end end impacted_hosts.uniq.each do |host| #f.puts k.to_s + " (" + v[:severity].to_s + ")," + @hosts[host][:ip] + "\n" @oFile.syswrite @hosts[host][:ip] + "," + @hosts[host][:hostname].to_s + "," + @hosts[host][:os].to_s.gsub("\n","/") + "\n" end end #end end |