lib/rack/insight/panel.rb in rack-insight-0.5.22 vs lib/rack/insight/panel.rb in rack-insight-0.5.23
- old
+ new
@@ -242,17 +242,12 @@
end
else
heading
end
end
- rescue Object => ex
- nom = self.name rescue "xxx"
- msg = ["Failed to create heading_for_request for #{nom}","#{ex.class}: #{ex.message}"] + ex.backtrace
- logger.error(msg.join("\n"))
- "Err3: #{nom}
- <!-- Panel: #{self.inspect}\n
- #{msg.join("\n")} -->"
+ rescue StandardError => exception
+ handle_error_for('heading_for_request', exception)
end
def content_for_request(number)
logger.info("Rack::Insight is using default content_for_request for #{self.class}") if verbose(:med)
if !self.has_table?
@@ -268,37 +263,32 @@
render_template 'no_data', :name => self.camelized_name
end
else
content
end
- rescue Object => ex
- nom = self.name rescue "xxx"
- msg = ["Failed to create content_for_request for #{nom}","#{ex.class}: #{ex.message}"] + ex.backtrace
- logger.error(msg.join("\n"))
- "Err4: #{nom}
- <!-- Panel: #{self.inspect}\n
- #{msg.join("\n")} -->"
+ rescue StandardError => exception
+ handle_error_for('content_for_request', exception)
end
def heading
self.camelized_name
- rescue Object => ex
- nom = self.name rescue "xxx"
- msg = ["Failed to create heading for #{nom}","#{ex.class}: #{ex.message}"] + ex.backtrace
- logger.error(msg.join("\n"))
- "Err1: #{nom}
- <!-- Panel: #{self.inspect}\n
- #{msg.join("\n")} -->"
+ rescue StandardError => exception
+ handle_error_for('heading', exception)
end
def content
logger.info("Rack::Insight is using default content for #{self.class}") if verbose(:med)
render_template 'no_content', :name => self.camelized_name
- rescue Object => ex
+ rescue StandardError => exception
+ handle_error_for('content', exception)
+ end
+
+ def handle_error_for(method_name, exception)
nom = self.name rescue "xxx"
- msg = ["Failed to create content for #{nom}","#{ex.class}: #{ex.message}"] + ex.backtrace
+ msg = ["#{self.class}##{method_name} failed","#{exception.class}: #{exception.message}"] + exception.backtrace
logger.error(msg.join("\n"))
- "Err2: #{nom}
+ # return HTML
+ "Error in #{nom}
<!-- Panel: #{self.inspect}\n
#{msg.join("\n")} -->"
end
# Override in subclasses.