一尘不染

我如何使用log4j自动记录类中调用的每个方法

java

我有一个带有数据库调用的类,并且我通常想用log4j记录该类中每个被调用的方法(带有参数):

logger.debug("foo(id="+id+") initiated");

是否可以自动执行此操作?也许通过在每种方法的开头使用某种注释,而不是编写每个logger.debug?

今天,每次更改参数或方法名称时,我都必须更新我的logging.debug。


阅读 194

收藏
2020-12-03

共1个答案

一尘不染

@Loggablejcabi-
aspects
尝试注释和AspectJ
方面(我是开发人员):

@Loggable(Loggable.INFO)
public String load(URL url) {
  return url.openConnection().getContent();
}

所有方法调用均通过SLF4J记录。

这篇博客文章逐步解释了它:使用AOP和注释进行Java方法记录

2020-12-03