Esper回调错误

时间:2014-05-28 14:31:59

标签: java esper

我目前在Storm拓扑中使用Esper,我知道有一个名为update()的方法回调,当Esper产生结果时会调用它。

我一直想知道如果Esper引擎本身出现错误会发生什么。

是否存在我可以覆盖并捕获Exception的错误回调?

或者我最好将sendEvent()来电包裹在try-catch中,然后相应地处理Exception

2 个答案:

答案 0 :(得分:1)

进一步阅读后,我可以看到Esper有异常处理的概念:

http://esper.codehaus.org/esper-4.2.0/doc/reference/en/html/configuration.html#config-engine-exceptionhandling

这应该满足我的用例并捕获任何内部的Esper异常。

答案 1 :(得分:1)

是的,Esper为Exception Handling提供了一种方式。

如果引擎遇到处理连续执行语句的异常,您可以为引擎注册一个或多个异常处理程序

您可以像下面一样注册ExceptionHandlerFactory。

Configuration config = new Configuration();
config.getEngineDefaults().getExceptionHandling().addClass(MyCEPEngineExceptionHandlerFactory.class);

您应该在引擎默认配置中提供实现com.espertech.esper.client.hook.ExceptionHandlerFactory接口的每个类的完全限定类名。

有关详细信息,请阅读documentation。 。