A infraestrutura de registro deve ser injetada ao usar IoC / DI se a fachada de registro for usada?

Estou usando o Autofac como meu IoC e de tudo o que li sobre o tópico DI ensina a usar "injeção de construtor" para expor explicitamente dependências de classe ... No entanto, também estou usando a fachada de registro (Common.Logging) com Log4Net e criei Módulo Autofac para injetar. Agora, em todas as classes em que eu quero fazer algum registro, eu tenho um parâmetro extra de construtor (veja a amostra 1) ....

Eu estou querendo saber se log de DI é necessário ao usar a fachada de registro? Eu entendo que expor explicitamente as dependências através da assinatura do construtor é uma boa arquitetura.mas no caso de fachada de registro, acredito que o seguinte seja verdadeiro:

Eu ainda posso "trocar" a estrutura de log a qualquer momentoA classe IMHO não é realmente dependente do Logger. Se nenhum registro estiver configurado, o NullLogger será usado. É quase "é assim que você precisa" versus "não vai funcionar a menos que você forneça" tipo de negócio ... (veja a amostra 2)

Então, o que os outros pensam? A injeção de fachada é um exagero? Há algunsperguntas semelhantes sobre este tema, mas em termos mais gerais (a infraestrutura) - Eu estou principalmente interessado em registrar ....

// IoC "way"
public class MyController : BaseController
{
    private readonly ILog _logger;

    public MyController(ILog logger)
    {
        _logger = logger;
    }

    public IList<Customers> Get()
    {
        _logger.Debug("I am injected via constructor using some IoC!");
    }
}

// just use the logger "way"
public class MyController : BaseController
{
    private static readonly ILog Logger = LogManager.GetCurrentClassLogger();

    public IList<Customers> Get()
    {
        Logger.Debug("Done! I can use it!");
    }
}

questionAnswers(4)

yourAnswerToTheQuestion