当前位置: 首页 > 知识库问答 >
问题:

Camel:检测Kafka错误IP

左丘边浩
2023-03-14

我正在将Kafka配置为RouteBuilder中的源。我的目标是处理Kafka断线问题。我的RouteBuilder如下:

new RouteBuilder() {
        public void configure() {
            onException(Exception.class).process(exchange -> {
                final Exception exception = exchange.getException();
                logger.error(exception.getMessage());
                // will do more processing here
            });
            from(String.format("kafka:%s?brokers=%s:%s", topicName, host, port)).bean(getMyService(), "myMethod")
            .process(new Processor() {
                @Override
                public void process(Exchange exchange) throws Exception {
                    // some more processing
                }
            });
        }
    };

我提供了错误的主机和端口,并期望看到一个异常。但是,在日志中没有看到异常,并且没有调用onException处理。知道我做错了什么吗?

通过在本地运行https://github.com/apache/camel/blob/master/examples/camel-example-kafka/src/main/java/org/apache/camel/example/Kafka/messageConsumerClient.java而不运行任何Kafka服务器,可以重现类似的问题。这样做会导致持续的消息流:

Connection to node -1 could not be established. Broker may not be available.

有没有方法抛出异常?如有任何帮助,我们将不胜感激。

共有1个答案

丰俊艾
2023-03-14

当您有消息要路由时,RouteBuilder中的OnException将被触发,但由于您无法连接到Kafka集群,所以您没有。这就是您看不到异常处理的原因。

 类似资料:
  • My mechanic told me, I couldn’t repair your brakes, so I made your horn louder. — Steven Wright 通常,当出现问题时,我们会在继续运行前先停止它并修复错误。然而, 当以守护进程模式运行时,Puppet 会忽略配置清单的编译错误, 仅从缓存中应用最近一次已知可运行的版本。这个行为是由 usecacheonf

  • 本文向大家介绍什么是错误检测?,包括了什么是错误检测?的使用技巧和注意事项,需要的朋友参考一下 当数据从一台计算机共享到另一台计算机时,系统不会保护该计算机接收的信息是否实际上是另一台计算机传输的数据。错误是当在接收器端接收到的消息与发送的消息不可互换时。 错误类型 以下是错误的类型- 单位错误 当仅将数据包中的单个位从1更改为0或从0更改为1时,会发生这些错误。这些类型的错误最有可能在数据的并行

  • 在我的spring boot应用程序中,Logback正在将我抛到下面错误 我的登录配置是:

  • 我的任务是处理路由中所有传入的消息,并将它们保存到数据库中。我的路由从webservice(camel cxf)开始,然后处理到ejb并返回soap响应。 我决定使用驼峰sql组件。就我在记录传入消息方面没有任何问题而言: 但是我不知道如何处理异常并以SOAP消息的形式保存它们。 但它将原始消息保存在数据列中。有谁能帮忙吗?

  • 没有办法(不管它有多“黑”)检测Java的已写入,以便在发生这种情况时能够执行逻辑?-我目前正在使用(我们称之为)的一个自定义子类,它在

  • 我正在尝试使用Camel FTP组件(Camel 2.19.0)检索文件: 从跟踪日志中,我可以看到Camel正在正确地列出目录中的文件: 但是,当Camel试图处理每个文件时,它似乎将相对目录预置到绝对目录,并且无法找到结果的乱码路径: FTPComponent构造的日志中的此路径不正确: