spring—如何创建一个功能来测量java中查询的开始时间、结束时间和执行时间?

qltillow  于 2021-07-06  发布在  Java
关注(0)|答案(1)|浏览(330)

下午好!我需要创建允许我测量查询的开始/结束时间和持续时间的功能。我尝试使用log4j库并创建自己的记录器,但无法在applicationspringcontext中指定它。也许有人能建议如何正确处理这个问题?我可以用什么工具来完成这些任务?非常感谢你的帮助!我的日志:

package net.proselyte.springbootdemo;

import org.hibernate.engine.internal.StatisticalLoggingSessionEventListener;
import org.jboss.logging.Logger;

public class NewStatisticalLoggingSessionEventListener extends StatisticalLoggingSessionEventListener {
    private static final Logger log = Logger.getLogger(NewStatisticalLoggingSessionEventListener.class);

    @Override
    public void jdbcExecuteStatementStart() {
        //Write method
    }

    @Override
    public void jdbcPrepareStatementEnd() {
        //Write method
    }
}

我尝试添加时的myapplicationcontext:

logging.level.net.proselyte.springbootdemo.NewStatisticalLoggingSessionEventListener=info

我的任务应该有以下输出:

startTime=2020-09-18 Time 10:30:1231
endTime=2020-09-18 Time 10:30:2500
requestExecutionTime=60;
success/unsuccess
gywdnpxw

gywdnpxw1#

您可以使用以下选项:

long startTime = System.currentTimeMillis();
// Some JDBC call
long finishTime = System.currentTimeMillis();
long timeElapsed = finish - start;

相关问题