[英]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.