@Before("execution(* *.*(..))")
 public void logJoinPoint(JoinPoint joinPoint) {
   log.info("Join point kind : " + joinPoint.getKind());
   log.info("Signature declaring type : " + joinPoint.getSignature().getDeclaringTypeName());
   log.info("Signature name : " + joinPoint.getSignature().getName());
   log.info("Arguments : " + Arrays.toString(joinPoint.getArgs()));
   log.info("Target class : " + joinPoint.getTarget().getClass().getName());
   log.info("This class : " + joinPoint.getThis().getClass().getName());
 }