首页 > 解决方案 > Spring数据JPA日志记录

问题描述

我想记录 JPA 存储库将数据保存到数据库中所花费的时间。目前,我已经使用 Spring around Aspect 来记录它,但它似乎不太准确,因为它直到 @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;
    }

} 

标签: javaspringhibernatespring-bootspring-data-jpa

解决方案


您可以使用P6Spy,它将注销所有单个查询的执行时间。


推荐阅读