自定义 Python 在模块中引发异常时模块无法重新执行

custom Python Module can not re-excute when raise exception in module

我自定义了一个处理器Python模块,RabbitMQ作为源,Python模块在python模块中引发异常时无法重新执行。 在这个 python 模块中,它连接到 elasticsearch ,当 es 关闭时,它会引发异常。xd 总是从 RabbitMQ 获取消息,并抛出异常,即使 elasticsearch 服务再次可用:

2015-04-23 19:27:52,336 1.1.1.RELEASE ERROR SimpleAsyncTaskExecutor-1    process.ShellCommandProcessor - 
java.io.IOException: 
    at java.io.FileOutputStream.writeBytes(Native Method)
    at java.io.FileOutputStream.write(FileOutputStream.java:315)`

但在 java 处理器模块中,当 elasticsearch 服务关闭时,抛出异常,但 java 处理器模块在 elasticsearch 服务再次可用时正确执行。

我尊重服务,不依赖他人。那么如何使 python 模块反应正确?

我创建了一个问题来调查这个问题。 https://jira.spring.io/browse/XD-2982