我有一个卡夫卡应用程序,它从一个主题消费并写入另一个主题。日志记录是通过slf4j. 它将信息和错误记录到单独的文件中。我的应用程序有问题,有时会遇到INVALID_FETCH_SESSION_EPOCH错误。问题是这个错误最终出现在我的信息文件中,并且应用程序永远挂起并需要重新启动。一种解决方案是找到这个与我现在的问题无关的无效纪元问题的根源。我的问题是如何检查日志中是否有此错误并在发生错误时自动重新启动应用程序。我通过扩展 Logger 和 ILoggerFactory 实现了自己的自定义记录器,但它们仍然无法检查此错误。看来Kafka使用了不同的Logger来编写它。我也无法检查日志文件,因为它们是由滚动策略创建的,并且实施起来会很麻烦。无论如何,在写入之前,我的信息文件中的内容是否可以通过我的自定义方法进行检查?
1 回答
慕勒3428872
TA贡献1848条经验 获得超6个赞
我在日志中添加了自定义过滤器。在此过滤器中,我检查消息,每当消息包含时,INVALID_FETCH_SESSION_EPOCH
我都会调用一个重新启动应用程序的方法。
添加回答
举报
0/150
提交
取消