我试图定义一个方面来注入一个记录器。
我想创造一些东西,比如:
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
public aspect LogInjector {
private pointcut executionJoinPoints(): !within(LogInjector) && execution (* *.*(..));
before(): executionJoinPoints(){
clazz = ...
final Logger logger = LogManager.getLogger(clazz);
method = ...
params = ...
stack = ...
logger.trace("{}.{}({}) - {}", clazz.name(), method.name(), params, stack);
}
after(): executionJoinPoints(){
clazz = ...
final Logger logger = LogManager.getLogger(clazz);
method = ...
result = ...
logger.trace("{}.{} = {}", clazz.name(), method.name(), result);
}
}
为此,我要检索执行元数据/上下文数据:
如何获取此元数据/上下文数据?