public void EatDinner(string appetizer, string mainCourse, string dessert)
{
try
{
// Code
}
catch (Exception ex)
{
Logger.Log("Error in EatDinner", ex);
return;
}
}
Cuando ocurre una excepción en un método específico, ¿qué debería estar registrando?¿Qué registrar cuando ocurre una excepción?
Veo mucho de lo anterior en el código con el que trabajo. En estos casos, siempre tengo que hablar con la persona que experimentó el error para averiguar qué estaban haciendo, recorrer el código e intentar reproducir el error.
¿Existen mejores prácticas o formas en que puedo minimizar todo este trabajo extra? ¿Debo registrar los parámetros en cada método de esta manera?
Logger.Log("Params: " + appetizer + "," + mainCourse + "," + dessert, ex);
¿Existe alguna forma mejor de registrar el entorno actual? Si lo hago de esta manera, ¿tendré que escribir todo esto para cada método que tengo en mi aplicación? ¿Existen mejores prácticas en escenarios como este?
Tenga en cuenta que el re-lanzamiento debe hacerse usando 'throw;' y * not * 'throw ex;', para evitar borrar la pila de llamadas. –