Skip to content

Instantly share code, notes, and snippets.

@rafaelss
Forked from anonymous/gist:581038
Created September 15, 2010 17:02
Show Gist options
  • Save rafaelss/581054 to your computer and use it in GitHub Desktop.
Save rafaelss/581054 to your computer and use it in GitHub Desktop.
class SpiderController < ApplicationController
def index
@sites = Site.all
@sites.each do |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 = ? AND created_at <= ?", site.id, 1.hour.ago]);
if !last
status = Status.create(:site => site, :status => response.code)
end
end
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment