# File lib/rsolr/error.rb, line 7 def to_s m = "#{super.to_s}" if response m << " - #{response[:status]} #{Http::STATUS_CODES[response[:status].to_i]}" details = parse_solr_error_response response[:body] m << "\nError: #{details}\n" if details end p = "\nURI: #{request[:uri].to_s}" p = "\nRequest Headers: #{request[:headers].inspect}" if request[:headers] p = "\nRequest Data: #{request[:data].inspect}" if request[:data] p << "\n" p << "\nBacktrace: " + self.backtrace[0..10].join("\n") m << p m end
# File lib/rsolr/error.rb, line 25 def parse_solr_error_response body begin info = body.scan(/<pre>(.*)<\/pre>/i)[0] info = info.join if info.respond_to? :join info ||= body # body may not contain <pre> elements partial = info.to_s.split("\n")[0..10] partial.join("\n").gsub(">", ">").gsub("<", "<") rescue nil end end