Понадобилось в Cacti мониторить время работы бесперебойника от батарей, для чего я написал свой скрипт.
Код: Выделить всё
#!/usr/local/bin/ruby
require 'rubygems'
require 'snmp'
begin
SNMP::Manager.open(:Host => "#{ARGV[0]}", :Version => :SNMPv1) do |host|
time = host.get_value("1.3.6.1.4.1.318.1.1.1.2.2.3.0").to_s
time = time.split(/:/)
hour = time[0].to_i
min = time[1].to_i
tmp = time[2].split(//)
sec = 10*tmp[0].to_i+tmp[1].to_i
min = min+1 if (sec > 30)
time_remain = 60*hour+min
printf "time:%s\n", time_remain
end
Код: Выделить всё
[x@x /usr/local/www/cacti/scripts]$ ./APC_time_remain.rb 192.168.2.8
time:219
input string выглядит так:
Код: Выделить всё
ruby <path_cacti>/scripts/APC_time_remain.rb <ip>

Подскажите пожалуйста - что нужно поправить/добавить чтобы скриптик заработал?