Quando usar o 'Nested diagnostic context' (NDC)?

Brincando com o log4net, vi a possibilidade de usar uma pilha por segmento de rótulos de contexto chamada NDC.

Os rótulos enviados nessa pilha são exibidos em um PatternLayout especificando o%x ou o%ndc parâmetro de formato.

O uso é algo como:

ILog log = log4net.LogManager.GetLogger(...) ;

//pattern layout format: "[%ndc] - %message%newline"

log.Info("message 1"); 
using(log4net.NDC.Push("context")
{
    using(log4net.NDC.Push("inner_context")
    {
      log.Info("message 2"); 
    }
    log.Info("message 3"); 
}
log.Info("message 4"); 

A saída é algo como:

null - message 1
context inner_context - message 2
context - message 3
null - message 4

Na sua experiência de programação com o log4net, quando você achou esse recurso útil?

questionAnswers(4)

yourAnswerToTheQuestion