Recomendaría dos cosas.
1) Para obtener todos los detalles sobre las excepciones arrojadas, establecía la política de error en always. Esto debería devolver más detalles de los mensajes de excepción de su código.
GlobalConfiguration.Configuration.IncludeErrorDetailPolicy = IncludeErrorDetailPolicy.Always;
Creo que esto solo funciona en RC.
2) Luego, también le sugiero que conecte un controlador de mensajes que puede usar para obtener información adicional de solicitud/respuesta. Los manejadores de mensajes se ejecutarán cuando entren nuevas solicitudes y justo antes de que vuelvan las respuestas finales. Hay muchos ejemplos de esto en línea. WebAPIContrib tiene uno en el que es GitHub repo se puede echar un vistazo a como example
3) Si desea supervisar otros eventos del servidor, es posible que desee considerar el uso de asp.net health monitoring, siempre y cuando usted es el anfitrión en asp. neto por supuesto. Te permitirá realizar diversas auditorías y controlar los errores del servidor.
Hola, yo no quiero usar controladores de mensajes porque no van a trabajar en este caso. Necesito un registro de eso que está haciendo el marco. Por ejemplo, los manejadores de mensajes no serán calles si se produce un error mientras se inicia el servidor. – user437899
Los errores del servidor no serían específicos de la API web. ¿Has mirado el control de la salud? Puedo agregarlo con algunos enlaces a mi respuesta – cecilphillip
Debes * nunca * usar ** IncludeErrorDetailPolicy.Siempre ** en el entorno de producción esta es una vulnerabilidad de Dictado de información: la excepción contiene detalles que pueden usarse para encontrar una forma de piratear tu sistema (ver https://www.owasp.org/index.php/Information_Leak_(information_disclosure)) – Isantipov