繁体   English   中英

CXF通话时间记录

[英]CXF call duration logging

我正在使用自定义cxf拦截器来记录服务调用的请求/响应,并且我想记录调用与响应一起花费的时间。

有什么办法吗?

您需要将开始时间存储在拦截器中的Exchange上(如果您是服务器,则将拦截器存储在Exchange中,如果您是客户端)

message.getExchange().put("com.myapp.startTime", System.currentTimeMillis());

并在外(分别在)拦截器中检索它

long timeTaken = System.currentTimeMillis() - (Long)message.getExchange().get("com.myapp.startTime");

根据现有拦截器在链中的确切位置,您可能需要在专用的一对拦截器中执行此操作,在链中尽早插入一个,而在链中尽早退出(对于服务器,反之亦然)如果您是客户)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM