Hopefully this presentation stirred some interest; especially in log4net. As promised here is the slide deck.


Also here is the log4net cut-'and-paste everywhere' line:

private static readonly log4net.ILog log = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);

For those not at the presentation that line of code uses reflection to determine the Class's type instead of us modifying GetLogger(typeof (YourClass)) everytime we declare a logger. The reflection penalty will be swallowed once in each class' static constructor.