Мне интересно, какая разница между протоколированием и трассировкой.
Разница в основном заключается в том, что трассировка - это более подробный журнал, дающий разработчикам инструмент для отладки приложений во время выполнения?
Я экспериментировал с log4net и выполнял ведение журнала. Теперь мне интересно, должен ли я также отслеживать трассировку, и если бы я мог/должен использовать log4net для этой цели. Должен ли я выполнять трассировку с помощью log4net и существует ли какой-то уровень следа для log4net-регистраторов? Должен ли я использовать другой уровень журнала для отладки и трассировки, или это нормально использовать то же самое? Можете ли вы дать простой пример того, как я буду вести журнал и трассировку для простого метода?
Изменить: Несмотря на несколько полезных ответов ниже, я все еще не уверен, как мне следует отслеживать и вести журнал.
У меня есть следующий метод на моем бизнес-уровне, и я хочу добавить к нему журнал/трассировку. Мне интересно, как это сделать эффективно. Является ли следующий метод приемлемым с точки зрения регистрации/трассировки? Должны ли сообщения журнала иметь тип Info вместо Debug? Являются ли сообщения Debug сообщениями отслеживаемыми? Как бы вы его изменили?
IEnumerable<Car> GetCars()
{
try
{
logger.Debug("Getting cars");
IEnumerable<Car> cars = CarAccessor.GetCars().ConvertAll(DataAccessToBusinessConverter);
logger.Debug("Got total of " + cars.Count + " cars");
} catch (Exception e) {
logger.Error("Error when getting cars", e);
throw new Exception("Unexpected error when getting cars");
}
}