2016-09-26 108 views
0

我在windows7上使用wso2 esb4.9。 JDK是7.0。wso2 esb重试配置

我想让esb在超时错误发生时重试5次。

ESB日志显示5次重试... 但没有重试日志打印......

<endpoint name="Sample_First" statistics="enable" > 
    <address uri="http://localhost/myendpoint" statistics="enable" trace="disable"> 
     <timeout> 
      <duration>60000</duration> 
     </timeout> 

     <markForSuspension> 
      <errorCodes>101504, 101505</errorCodes> 
      <retriesBeforeSuspension>5</retriesBeforeSuspension> 
      <retryDelay>1</retryDelay> 
     </markForSuspension> 

     <suspendOnFailure> 
      <errorCodes>101500, 101501, 101506, 101507, 101508</errorCodes> 
      <initialDuration>1000</initialDuration> 
      <progressionFactor>2</progressionFactor> 
      <maximumDuration>60000</maximumDuration> 
     </suspendOnFailure> 

    </address> 
</endpoint> 
+0

你是什么意思'ESB日志显示5次重试...但是没有重试日志打印...'? – Bee

回答

1

当我明白你问ESB是否尝试4次以上,如果连接到端点它会超时(无法连接)。这不是<retriesBeforeSuspension>标签的想法。这个整数意味着ESB将该端点标记为SUSPENDED端点,如果4(根据您的配置)更多请求连续超时。这些其他请求应该手动完成,而不是由ESB自动完成。这就是你没有看到5次重试日志的原因。

希望这会有所帮助。

+0

非常感谢,这个解释看起来合情合理。 – richard