rescue catches. Log the class or message.
Goal
Rescue ZeroDivisionError and a raised RuntimeError.
begin
puts 1 / 0
rescue ZeroDivisionError => e
puts e.class
puts e.message
endbegin
raise "empty till"
rescue => e
puts e.message
enddef need_city(city)
raise "city required" if city.nil? || city.empty?
city
end
begin
puts need_city("Nairobi")
puts need_city("")
rescue => e
puts "caught #{e.message}"
endputs Integer("12")
begin
Integer("nairobi")
rescue ArgumentError => e
puts e.class
end