【发布时间】:2013-12-24 04:02:41
【问题描述】:
在我的 play framework 2 应用程序中,我希望有一条日志消息,其中包含请求、响应和有关响应的一些详细信息 - 例如从外部网络调用返回的搜索结果的数量。
我现在拥有的是这样的过滤器:
object AccessLog extends Filter {
import play.api.mvc._
import play.api.libs.concurrent.Execution.Implicits._
def apply(next: RequestHeader => Future[SimpleResult])(request: RequestHeader): Future[SimpleResult] = {
val result = next(request)
result map { r =>
play.Logger.info(s"Request: ${request.uri} - Response: ${r.header.status}")
}
result
}
}
在记录时,我已经将我的类转换为 json,因此将 json 解析回对象以便我可以记录有关它的信息似乎很浪费。
是否可以在请求管道中较早地计算搜索结果的数量,可能会计算到字典中,并在我在这里记录消息时将它们提取出来?
我正在查看 Flash,但不希望不惜任何代价将这些值发送到 cookie 中。也许我可以清除闪光灯。如果有更合适的方式我想看看。
这是只读 API 的一部分,不涉及用户帐户或会话。
【问题讨论】: