我想记录JPA存储库将数据保存到数据库所花费的时间。
目前,我已经使用Aspect周围的Spring来记录它,但是它似乎不太准确,因为它直到@Transactional方法结束才提交。
@Timed(metricName = "inmtPersistence")
public void persistInmt(final List<T> inmtList) {
if (inmtList.size() == 0) {
return;
}
Map<String, E> inmtEntityMapFromDb = getInmtEntitiesFromDb(inmtList);
List<E> inmtEntities = getInmtEntities(inmtList, inmtEntityMapFromDb);
try {
inmtRepository.saveAll(inmtEntities);
} catch (Exception e) {
log.error("Exception ");
throw e;
}
}
最佳答案
您可以使用P6Spy,它将注销所有单个查询的执行时间。