I have a class with database calls, and I generally want to log every method called (with arguments) in this class with log4j:
logger.debug("foo(id="+id+") initiated");
Is it possible to do this automatically? Maybe by using some sort of annotation in start of each method instead of writing every single logger.debug?
Today I have to update my logging.debug every time I change arguments or method name.
Try
@Loggableannotation and an AspectJ aspect from jcabi-aspects (I’m a developer):All method calls are logged through SLF4J.
This blog post explains it step by step: Java Method Logging with AOP and Annotations