Moons
Moons

Reputation: 3854

Using Log4Net to log all the functions called in ASP.NET and C# application

Yesterday i implement Log4Net in my application.

To use it i need to write

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


 log4net.Config.XmlConfigurator.Configure();
 log.Debug("My function called");

Problem:

I need to log every function of my project.

Whether there is some setting that i can use to log all function calls without need to right log.Debug() always as i need to track only function name and don't need any message.

Any help is appreciated

Upvotes: 1

Views: 2418

Answers (3)

PanJanek
PanJanek

Reputation: 6675

What you are trying to do is called "Aspect Programimg" - attaching new code to some points inside already written and compiled code. There is no built-in aspect features in C# so you have to use framework like PostSharp. More here:

Aspect Oriented Programming in C#

You need to attach your logging code before and after each method invocation. Mind that it will decrease performance dramatically, and the logs will grow really fast.

Upvotes: 2

Brijesh Mishra
Brijesh Mishra

Reputation: 2748

you can have a look at postsharp, log4net is not an aop tool, so alone it cant do what you are looking out for

Upvotes: 1

NickD
NickD

Reputation: 2646

i think the stacktrace class could help. http://msdn.microsoft.com/en-us/library/system.diagnostics.stacktrace.aspx another possibility is to use a .net trace listener.

Upvotes: 0

Related Questions