【问题标题】:WSO2: MQTT input event adapter is not listeningWSO2:MQTT 输入事件适配器未在侦听
【发布时间】:2019-11-01 23:31:39
【问题描述】:

我正在使用 WSO2 CEP 4.2.0 并创建了 MQTT 输入事件适配器。我还创建了接收器,它将接收来自外部主题的数据,然后使用流,我正在添加一些逻辑,然后将使用发布者将相同的消息发布到另一个外部主题。

现在,当我重新启动应用程序时,我收到以下两条消息:

INFO {org.wso2.carbon.event.input.adapter.core.internal.InputAdapterRuntime} -  Connecting receiver mqttreceiver_test
INFO {org.wso2.carbon.event.input.adapter.mqtt.internal.util.MQTTAdapterListener} -  MQTT Connection successful

然后当我从外部 mqtt 客户端发布消息时,我可以看到消息到达事件接收器,经过流处理后,消息转到输出事件发布器。

但大约 5 分钟后,事件接收器中不再收到消息。我在日志中也没有收到任何错误消息,但我能感觉到可能是输入适配器不再监听。 任何建议或任何指导都会有所帮助。

谢谢

【问题讨论】:

    标签: wso2 wso2carbon wso2cep wso2-das


    【解决方案1】:

    我可以建议调试此问题的几件事:

    1. 可能是流程中断,因此事件无法到达 输出事件发布者?您可以使用记录器事件发布者 [1] 并记录 MQTT 输入事件适配器生成的流。
    2. 为包启用调试日志 org.wso2.carbon.event.input.adapter.mqtt.internal.util让你 当MQTTAdapterListener 收到消息时将看到一个日志(请参阅 [2])。您可以按照 [3] 启用调试日志。
    3. 当问题 发生这种情况,进行线程转储并查看MQTTAdapterListener 线程正在运行。

    希望这些可以帮助您缩小问题范围。

    [1]https://docs.wso2.com/display/CEP420/Logger+Event+Publisher

    [2]https://github.com/wso2/carbon-analytics-common/blob/v5.1.3/components/event-receiver/event-input-adapters/org.wso2.carbon.event.input.adapter.mqtt/src/main/java/org/wso2/carbon/event/input/adapter/mqtt/internal/util/MQTTAdapterListener.java#L150

    [3]https://docs.wso2.com/display/CEP420/Logging

    【讨论】:

    • 我启用了这些日志并进行了线程转储,但没有任何迹象表明适配器进入了非监听模式。 cep 4.2.0 中是否有任何错误?
    猜你喜欢
    • 2020-09-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-08-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多