Grails - 如何计算任何操作所花费的执行时间?

标签 grails

因为我正在重建遗留系统,所以我正在尝试衡量在我的应用程序的每个操作上花费的时间。

现在我在 Controller 级别执行此操作:

def actionStart() {
    session.startTime = new Date().getTime()
}
def actionEnd() {
    def endTime = new Date().getTime()
    timeHandler(endTime, session.startTime)
}
def timeHandler(end, start){
    return end - start
}

重要:我想把它移到一个过滤器中,并在每个 Action 的开始和结束时自动执行。

最好的方法应该是什么?提前致谢。

PS.: 获取System.currentTimeMillis() 和实例化一个对象有什么区别?性能?

最佳答案

在 Action 开始时这样做:

long now = System.currentTimeMillis();

在 Action 结束时,像这样:

System.out.println( (System.currentTimeMillis() - now) + " ms");

然后把你的 Action 放在这两条线之间

免责声明:

这个问题我是按照java回答的(未编辑tags),所以请说明一下你的tags。

关于Grails - 如何计算任何操作所花费的执行时间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16060516/

相关文章:

grails - 将应用程序部署为 war 时,Grails 是否运行 Bootstrap.groovy 脚本?

grails - 在每个测试用例之后是否可能进行Grails IntegrationSpec回滚?

grails - gson View 无法解析域类

json - Grails 日期解码

tomcat - 多个服务器的grails不同配置文件

Grails 插件开发 - 覆盖域类

Grails Hessian 问题

grails - 如何在grails中定义服务的名称?

grails - 如何从每个groupProperty中获得一个结果?

grails - 无法在grails中实现软删除