Skip to content

Instantly share code, notes, and snippets.

Created September 15, 2010 16:55
Show Gist options
  • Save anonymous/581038 to your computer and use it in GitHub Desktop.
Save anonymous/581038 to your computer and use it in GitHub Desktop.
class SpiderController < ApplicationController
def index
@sites = Site.all()
@sites.each{|site|
uri = URI.parse(site.url)
http = Net::HTTP.new(uri.host, uri.port)
request = Net::HTTP::Get.new(uri.request_uri)
request["User-Agent"] = "Status Monitor"
response = http.request(request)
last = Status.first(:order => "created_at DESC", :conditions => ["site_id = ?", site.id]);
if !last || 1.hour.ago > last.created_at
status = Status.new
status.site = site
status.status = response.code
status.save()
end
}
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment