Come ottenere il nome utente corrente anziché l’identity framework AppPool in un file di registro con Log4Net

Stiamo utilizzando Log4Net dalla nostra applicazione ASP.NET MVC3, tutto funziona bene ma vorremmo vedere il nome utente corrente al posto dell’identity framework del pool di applicazioni nei file di log, questa è la configurazione dell’appender che stiamo utilizzando:

   true                  

Quindi sembra la proprietà: %username sta recuperando il valore di:

 WindowsIdentity.GetCurrent().Name 

Invece di cosa avremmo bisogno: HttpContext.Current.User

Qualche idea su come possiamo risolverlo facilmente in web.config senza creare proprietà personalizzate o classi derivate da log4net aggiuntivi? Se ansible, altrimenti se la proprietà personalizzata è l’unico modo in cui possiamo vivere con quello immagino 🙂 grazie!

Sostituire %username di %identity dovrebbe farlo. Sta funzionando per me nel mio attuale progetto.

Puoi saperne di più su log4net con questo eccellente tutorial