首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >记录播放的请求时间!2 Scala应用程序

记录播放的请求时间!2 Scala应用程序
EN

Stack Overflow用户
提问于 2014-01-17 16:12:34
回答 1查看 920关注 0票数 4

我试图在Scala播放2应用程序中记录所有请求的时间。我认为我需要重写onRequestReceived来返回一个新的Handler,它调用操作,然后记录时间,然后返回操作的结果。但我不知道该怎么打电话给处理员。

我现在拥有的是:

代码语言:javascript
复制
override def onRequestReceived(requestHeader: RequestHeader) = {
  val startTime = System.currentTimeMillis

  val (rh, handler) = super.onRequestReceived(requestHeader)

  def newHandler = Action {
    val result = handler.apply // No such method

    val requestTime = System.currentTimeMillis - startTime
    Logger.debug("time: " + requestTime)

    result
  }

  (rh, newHandler)
}    

但handler.apply并不存在。如何调用super.onRequestReceived返回的处理程序。更重要的是,我这样做对吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-03-02 09:06:27

那么,为什么不尝试自己处理请求的任务,而不只是调用基类并记录基类中的方法处理它所需的时间呢?换言之:

代码语言:javascript
复制
override def onRequestReceived(request: RequestHeader) = {
  val startTime = System.currentTimeMillis()
  val result = super.onRequestReceived(request)
  val endTime = System.currentTimeMillis()
  logger.debug("Request lasted:" + (endTime - startTime) + " ms")
  result
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21190569

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档