2
我正试图在Scala Play!2应用程序中记录所有请求的时间。我想我需要覆盖onRequestReceived
以返回一个调用动作的新的Handler
,然后记录时间,然后返回动作的结果。但我不知道如何调用处理程序。Play!2 Scala应用程序的日志记录请求时间
这是我有:
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返回的处理程序。而且,更重要的是,我是否以正确的方式来解决这个问题?
看看[this](https://github.com/kenshoo/metrics-play)。 – Peter
我看到了,但'过滤器'只适用于获取处理程序的请求。我需要记录所有请求,甚至是不成功的请求。 –
你想在游戏外登录吗?或者任何时间花费在游戏内部都将被排除在外......我认为网络级别的日志记录最准确,或者在机器上的网络边界(nic和ngnx之间)...... – bwawok