aboutsummaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorLouise Crow <louise.crow@gmail.com>2014-12-11 15:36:21 +0000
committerLouise Crow <louise.crow@gmail.com>2014-12-11 15:36:21 +0000
commit2a1fe08f90439f13b38cb1e9549e85d643aeef43 (patch)
tree1ac2d02bab04b3d5f1280d5eba873b38b31cf396 /lib
parentde5c998d72bac9e13c56b6089169da9647d014b2 (diff)
parentf7bb67685086da37578305f60d2adbacbd3c3343 (diff)
Merge branch 'catch-openuri-timeout-errors' into rails-3-develop
Diffstat (limited to 'lib')
-rw-r--r--lib/quiet_opener.rb15
1 files changed, 13 insertions, 2 deletions
diff --git a/lib/quiet_opener.rb b/lib/quiet_opener.rb
index 16ea27b8e..c6e259b93 100644
--- a/lib/quiet_opener.rb
+++ b/lib/quiet_opener.rb
@@ -7,8 +7,19 @@ end
def quietly_try_to_open(url)
begin
result = open(url).read.strip
- rescue OpenURI::HTTPError, SocketError, Errno::ETIMEDOUT, Errno::ECONNREFUSED, Errno::EHOSTUNREACH, Errno::ECONNRESET
- Rails.logger.warn("Unable to open third-party URL #{url}")
+ rescue OpenURI::HTTPError,
+ SocketError,
+ Errno::ETIMEDOUT,
+ Errno::ECONNREFUSED,
+ Errno::EHOSTUNREACH,
+ Errno::ECONNRESET,
+ Timeout::Error => exception
+ e = Exception.new("Unable to open third-party URL #{url}: #{exception.message}")
+ e.set_backtrace(exception.backtrace)
+ if !AlaveteliConfiguration.exception_notifications_from.blank? && !AlaveteliConfiguration.exception_notifications_to.blank?
+ ExceptionNotifier::Notifier.exception_notification(request.env, e).deliver
+ end
+ Rails.logger.warn(e.message)
result = ""
end
return result