在Mule ESB中公开Http响应时间

时间:2015-07-23 06:38:12

标签: mule mule-component

有没有办法在MULE中获取端点的响应时间? 示例是mule中的Http Connector,我需要获取被调用端点的响应时间。

2 个答案:

答案 0 :(得分:2)

我能够通过使用Mule Server Notification来解决我的问题。

有一个接口MessageProcessorNotificationListener,它可以监听消息处理器的PRE / POST调用。

我已经实现了使用以下代码获取消息处理器的响应时间。

  long startTime;
 if (m.getAction() ==  MessageProcessorNotification.MESSAGE_PROCESSOR_PRE_INVOKE) 
 {
     startTime = System.currentTimeMillis();
 }
 if (m.getAction() ==     MessageProcessorNotification.MESSAGE_PROCESSOR_POST_INVOKE) 
 {
     long executionTime = System.currentTimeMillis() - startTime;
     AbstractEndpoint ep = (AbstractEndpoint) proc;
     log.info("Http call to : "+ ep.getName() + " took " + executionTime + "ms response time");
 }

以下是回复

Http调用:endpoint.http.google.com.80需要224ms的响应时间。

答案 1 :(得分:1)

您实际需要利用哪些内容来获取服务器通知,请参阅以下文档页面:

https://developer.mulesoft.com/docs/display/current/Mule+Server+Notifications

查看端点通知。