ELMAH e controlador de API no MVC4 não registram erros

Usando um controlador de API no MVC4, quando a ação do controlador lança uma exceção, o ELMAH não registra o erro.

Eu acho que o problema é que o MVC4 define o código de status HTTP para 500, e ele retorna os detalhes da exceção em um objeto JSON, mas ele não lança uma exceção não tratada para que o ELMAH nunca o veja.

Como posso obter o ELMAH para capturar todas as respostas em que o código de status não é 200?

questionAnswers(2)

yourAnswerToTheQuestion