Мы только начинаем работать с Log4Net (и хотим, чтобы мы сделали это раньше).Хотя мы можем видеть внутренние исключения и т. Д., Единственное, что, по-видимому, отсутствует в выходных данных при регистрации исключения, - это любая информация о ключе / значении, содержащаяся в «Exception.Data».Есть ли в любом случае мы можем сделать это "из коробки"?Если нет, то, как мы на самом деле только начинаем, где следует искать способ реализовать эту функцию?
В качестве примера, пожалуйста, посмотрите самый основной псевдокод ниже.Мы не хотим загрязнять сообщение об исключении контекстной информацией только о том, в чем заключалась проблема (мы, вероятно, потеряли бы больше информации в данных, что помогло бы исследовать реальную проблему).Но сейчас все, что мы видим в наших журналах, это тип исключения, сообщение, любая трассировка стека, но не исключение «данные».Это означает, что в наших журналах мы теряем идентификатор клиента и т. Д. Как мы можем легко получить эту информацию в наших журналах (без необходимости кодировать ее вручную при каждом исключении).
try
{
var ex = new ApplicationException("Unable to update customer");
ex.Data.Add("id", customer.Id);
throw ex;
}
catch(ApplicationException ex)
{
logger.Error("An error occurred whilst doing something", ex);
throw;
}