Rastreamento versus Logging e como o log4net se encaixa?
Eu estou querendo saber sobre qual é a diferença entre log e rastreamento.
A diferença é basicamente que o rastreamento é um log mais detalhado que fornece aos desenvolvedores uma ferramenta para depurar aplicativos em tempo de execução?
Eu tenho experimentado com log4net e fazendo logging. Agora eu estou querendo saber se eu deveria estar fazendo o rastreamento também e se eu poderia / deveria usar o log4net para esse propósito. Devo estar fazendo rastreamento com log4net e há algum nível de rastreamento para loggers log4net? Devo usar um nível de log diferente para fins de depuração e rastreamento ou é aceitável usar o mesmo? Você pode dar um exemplo simples de como eu faria o registro e o rastreamento de um método simples?
Edit: Apesar de algumas respostas úteis abaixo eu ainda não tenho certeza de como eu deveria estar fazendo rastreamento versus log.
Eu tenho o seguinte método na minha camada de negócios e quero adicionar logging / rastreamento para ele. Eu estou querendo saber como fazer isso de forma eficiente. O método a seguir é aceitável em termos de registro / rastreamento? As mensagens de log devem ser do tipo Info em vez de Debug? As mensagens de depuração que estou registrando são consideradas rastreio? Como você mudaria isso?
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");
}
}