I was trying to inject logging dependency by Castle Windsor to my code. More precisely, whenever a method in a class throws an error or application flow enters into a method it simply logs into a file. How to do this by writing nothing like
logger.Debug("Error code");
in the methods explicitly for each of the methods. Suppose we add attribute on each of the class or methods to leverage the logging facility for that.
Thanks in advance.
Use the interceptor facility in Castle Windsor.
So mark your class with
and create a class
UnhandledExceptionLogger
that implementsIInterceptor
. Roughly:and then when Castle Windsor creates an instance of your class marked with this
Interceptor
, it will create a proxy that wraps all methods invocations in the above try/catch log/rethrow block.