dakrone / labview_rails

A lab machine tracking system using rails (for sysadmins)

This URL has Read+Write access

labview_rails / up_status_change.rb
100755 27 lines (18 sloc) 0.455 kb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#!/usr/bin/env ruby
 
if ARGV[0].nil?
  puts "Need a database"
  exit
end
 
require 'rubygems'
require 'sqlite3'
require 'ping'
 
db = SQLite3::Database.new(ARGV[0])
 
rows = db.execute("SELECT * FROM `machines`")
 
#UPDATE table SET field2 = " . $value2 . " WHERE id = " . $id . "
 
rows.each do |r|
  id = r[0]
  ip = r[2]
  ping = Ping.pingecho(ip,2)
  #puts "#{id} - #{ip}"
 
  db.execute("UPDATE `machines` SET 'up_status'='#{ping}' WHERE id = #{id}")
 
end