* @throws Throwable if thrown by the target method
*/
@Around("anyRepositoryMethod()")
public Object monitor(ProceedingJoinPoint repositoryMethod) throws Throwable {
String name = createJoinPointTraceName(repositoryMethod);
Monitor monitor = monitorFactory.start(name);
try {
return repositoryMethod.proceed();
} finally {
monitor.stop();
logger.info(monitor);
}
}