?
Current Path : /usr/share/ruby/vendor_ruby/facter/ |
Linux gator3171.hostgator.com 4.19.286-203.ELK.el7.x86_64 #1 SMP Wed Jun 14 04:33:55 CDT 2023 x86_64 |
Current File : //usr/share/ruby/vendor_ruby/facter/system_uptime.rb |
# Fact: system_uptime # # Purpose: # Return the system uptime in a hash in the forms of # seconds, hours, days and a general, human # readable uptime. # # This fact is structured. These values are returned as a group of key-value pairs. # # Resolution: # Does basic math on the get_uptime_seconds utility # to calculate seconds, hours and days. # # Caveats: # require 'facter/util/uptime' Facter.add(:system_uptime) do setcode do system_uptime = {} if Facter.value(:kernel) == 'windows' seconds = Facter::Util::Uptime.get_uptime_seconds_win else seconds = Facter::Util::Uptime.get_uptime_seconds_unix end if seconds system_uptime['seconds'] = seconds minutes = seconds / 60 % 60 system_uptime['hours'] = seconds / (60 * 60) system_uptime['days'] = system_uptime['hours'] / 24 case system_uptime['days'] when 0 then system_uptime['uptime'] = "#{system_uptime['hours']}:#{"%02d" % minutes} hours" when 1 then system_uptime['uptime'] = "1 day" else system_uptime['uptime'] = "#{system_uptime['days']} days" end else system_uptime['uptime'] = 'unknown' end system_uptime end end