como registrar o nome do método ao usar a classe wrapper com o Log4net
Estou implementando um formatador XML personalizado para log4.net
public class ISDSApplicationEventsLayout : XmlLayoutBase
{
protected override void FormatXml(...)
{
//Location Info
writer.WriteStartElement("Method");
writer.WriteString(**loggingEvent.LocationInformation.MethodName * *);
writer.WriteEndElement();
}
}
O problema é ... agora quando eu chamo log method da minha classe wrapper de log ... chamado logging
public static void logEvent(string message)
{
log.Info(isdsLog);
}
Eu recebo a saída ....
<Method>logEvent</Method>
Como é possível ter o nome do método que chamou logEvent, em vez de logEvent como o nome do método?
Obrigado
Atualização de pergunta:
Se isto acima parecer um pouco complicado - o que eu estou realmente perguntando é: Como você mantém o contexto do método que chamou a função de logging de quebra automática em log4net ...
exemplo ... método doWork () ... chama -> logging wrapper -> chama log4net ....
Como você faz a função wrapper methodname = doWork and NOT logging ....