A module to gather uptime facts
# File lib/facter/util/uptime.rb, line 6 6: def self.get_uptime_seconds_unix 7: uptime_proc_uptime or uptime_sysctl or uptime_kstat or uptime_who_dash_b 8: end
# File lib/facter/util/uptime.rb, line 10 10: def self.get_uptime_seconds_win 11: require 'facter/util/wmi' 12: 13: last_boot = "" 14: Facter::Util::WMI.execquery("select * from Win32_OperatingSystem").each do |x| 15: last_boot = x.LastBootupTime 16: end 17: self.compute_uptime(Time.parse(last_boot.split('.').first)) 18: end
# File lib/facter/util/uptime.rb, line 46 46: def self.compute_uptime(time) 47: (Time.now - time).to_i 48: end
# File lib/facter/util/uptime.rb, line 50 50: def self.uptime_file 51: "/proc/uptime" 52: end
# File lib/facter/util/uptime.rb, line 34 34: def self.uptime_kstat 35: if output = Facter::Util::Resolution.exec("#{uptime_kstat_cmd} 2>/dev/null") 36: compute_uptime(Time.at(output.chomp.split(/\s/).last.to_i)) 37: end 38: end
# File lib/facter/util/uptime.rb, line 58 58: def self.uptime_kstat_cmd 59: 'kstat -p unix:::boot_time' 60: end
# File lib/facter/util/uptime.rb, line 22 22: def self.uptime_proc_uptime 23: if output = Facter::Util::Resolution.exec("/bin/cat #{uptime_file} 2>/dev/null") 24: output.chomp.split(" ").first.to_i 25: end 26: end
# File lib/facter/util/uptime.rb, line 28 28: def self.uptime_sysctl 29: if output = Facter::Util::Resolution.exec("#{uptime_sysctl_cmd} 2>/dev/null") 30: compute_uptime(Time.at(output.match(/\d+/)[0].to_i)) 31: end 32: end
# File lib/facter/util/uptime.rb, line 54 54: def self.uptime_sysctl_cmd 55: 'sysctl -n kern.boottime' 56: end
Disabled; run with --debug to generate this.
Generated with the Darkfish Rdoc Generator 1.1.6.