Como mostrar o tipo de erro no ruby?

no seguinte código

begin
 raise StandardError, 'message'
 #some code that raises a lot of exception
rescue StandardError
 #handle error
rescue OtherError
 #handle error
rescue YetAnotherError
 #handle error
end

quero imprimir um aviso indicando o tipo e a mensagem do erro sem adicionar a declaração de impressão a cada uma das cláusulas de resgate, como

begin
 raise StandardError, 'message'
 #some code that raises a lot of exception
rescue StandardError
 #handle error
rescue OtherError
 #handle error
rescue YetAnotherError
 #handle error
???
 print "An error of type #{???} happened, message is #{???}"
end
Author: Fluffy, 2009-09-22

1 answers

begin
  raise ArgumentError, "I'm a description"
rescue Exception => ex
  puts "An error of type #{ex.class} happened, message is #{ex.message}"
end

Impressões: ocorreu um erro do tipo Argumenerror, a mensagem é que sou uma descrição

 51
Author: sepp2k, 2009-09-22 17:39:18