服务转发和转发规则

Blade 未结 1 18
fxt
fxt 剑侠 1小时前

一、该问题的重现步骤是什么?

1.  (针对给第三方转发数据)  转发规则里配置MQTT转发和 服务转发的MQTT,具体什么区别image.png

2.  

RelayMqttApplication的日志 ,我先测试的服务端订阅,然后关闭后 测试的规则引擎里的转发规则,使用设备模拟发送的消息,为什么clientId还是111,而不是上图的



二、你期待的结果是什么?实际看到的又是什么?


三、你正在使用的是什么产品,什么版本?在什么操作系统上?

BladeX-Links-Pro   ,只启动了三个服务

四、请提供详细的错误堆栈信息,这很重要。



2026-06-24 17:12:43.031  INFO 37512 --- [           main] o.s.relay.mqtt.RelayMqttApplication      : Started RelayMqttApplication in 9.751 seconds (process running for 17.99)
2026-06-24 17:13:31.949  INFO 37512 --- [    tio-group-3] n.d.i.m.c.s.s.DefaultMqttServerProcessor : Connect successful, clientId: 111 uniqueId:111 result:true
2026-06-24 17:13:31.950  INFO 37512 --- [   biz-worker-2] s.e.SpringEventMqttConnectStatusListener : Mqtt clientId:111 username:iot online.
2026-06-24 17:13:31.951  INFO 37512 --- [   biz-worker-2] o.s.r.m.l.MqttConnectStatusListener      : MqttClientOnlineEvent:MqttClientOnlineEvent(super=ClientInfo{clientId='111', username='iot', keepAlive=60, connected=true, protoName='MQTT', protoVer=4, ipAddress='127.0.0.1', port=54805, connectedAt=1782292411938, createdAt=1782292411936, decodeQueueSize=-1, handlerQueueSize=-1, sendQueueSize=0})
2026-06-24 17:14:40.079  INFO 37512 --- [   biz-worker-3] o.s.r.m.l.MqttServerMessageListener      : received clientId:111 topic:/relay/k48jhTwi6jurM0xo6e2nBb3hOD/blade/sys/fq34p4ys6k8y/fq34rj51ks1t/thing/event/property/post message:MqttMessage[fixedHeader=MqttFixedHeader[messageType=PUBLISH, isDup=false, qosLevel=QoS0, isRetain=false, remainingLength=185], variableHeader=MqttPublishVariableHeader[topicName=/relay/k48jhTwi6jurM0xo6e2nBb3hOD/blade/sys/fq34p4ys6k8y/fq34rj51ks1t/thing/event/property/post, packetId=-1], payload=[B@35f4c402] payload:{"id":"44eaa448-9d3b-48c9-befb-0e75a8c6ef48","version":"1.0","params":{"dx":77,"dy":77}}
2026-06-24 17:14:40.080  INFO 37512 --- [   biz-worker-5] o.s.r.m.l.MqttServerMessageListener      : received clientId:111 topic:/relay/k48jhTwi6jurM0xo6e2nBb3hOD/blade/sys/fq34p4ys6k8y/fq34rj51ks1t/thing/event/property/post message:MqttMessage[fixedHeader=MqttFixedHeader[messageType=PUBLISH, isDup=false, qosLevel=QoS0, isRetain=false, remainingLength=185], variableHeader=MqttPublishVariableHeader[topicName=/relay/k48jhTwi6jurM0xo6e2nBb3hOD/blade/sys/fq34p4ys6k8y/fq34rj51ks1t/thing/event/property/post, packetId=-1], payload=[B@19b9f96a] payload:{"id":"44eaa448-9d3b-48c9-befb-0e75a8c6ef48","version":"1.0","params":{"dx":77,"dy":77}}
2026-06-24 17:14:42.740  WARN 37512 --- [imerTaskService] o.tio.server.task.ServerHeartbeatTask    : 
Relay-Server
 ├ 当前时间 :2026-06-24T17:14:42.738777800
 ├ 连接统计
 │  ├ 共接受过连接数 :1
 │  ├ 当前连接数 :1
 │  └ 关闭过的连接数 :0
 ├ 消息统计
 │  ├ 已处理消息 :4
 │  ├ 已接收消息(packet/byte) :4/411
 │  ├ 已发送消息(packet/byte) :2/6b
 │  ├ 平均每次TCP包接收的字节数 :102.75
 │  └ 平均每次TCP包接收的业务包 :1.0
 ├ 节点统计
 │  ├ clientNodes :1
 │  ├ 所有连接 :1
 │  ├ 绑定user数 :1
 │  ├ 绑定token数 :0
 │  └ 等待同步消息响应 :0
 ├ 队列统计
 │  ├ 解码队列总数 :0
 │  ├ 处理队列总数 :0
 │  └ 发送队列总数 :0
 └ 群组
    └ groupmap: 0
2026-06-24 17:14:42.740  WARN 37512 --- [imerTaskService] o.tio.server.task.ServerHeartbeatTask    : Relay-Server, 检查心跳, 共1个连接, 取锁耗时0ms, 循环耗时2ms, 心跳检测周期:120000ms, 心跳超时时间:90000ms
2026-06-24 17:16:42.745  WARN 37512 --- [imerTaskService] o.tio.server.task.ServerHeartbeatTask    : 
Relay-Server
 ├ 当前时间 :2026-06-24T17:16:42.745664500
 ├ 连接统计
 │  ├ 共接受过连接数 :1
 │  ├ 当前连接数 :1
 │  └ 关闭过的连接数 :0
 ├ 消息统计
 │  ├ 已处理消息 :7
 │  ├ 已接收消息(packet/byte) :7/417
 │  ├ 已发送消息(packet/byte) :5/12b
 │  ├ 平均每次TCP包接收的字节数 :59.57142857142857
 │  └ 平均每次TCP包接收的业务包 :1.0
 ├ 节点统计
 │  ├ clientNodes :1
 │  ├ 所有连接 :1
 │  ├ 绑定user数 :1
 │  ├ 绑定token数 :0
 │  └ 等待同步消息响应 :0
 ├ 队列统计
 │  ├ 解码队列总数 :0
 │  ├ 处理队列总数 :0
 │  └ 发送队列总数 :0
 └ 群组
    └ groupmap: 0
2026-06-24 17:16:42.746  WARN 37512 --- [imerTaskService] o.tio.server.task.ServerHeartbeatTask    : Relay-Server, 检查心跳, 共1个连接, 取锁耗时0ms, 循环耗时1ms, 心跳检测周期:120000ms, 心跳超时时间:90000ms
2026-06-24 17:16:44.768  INFO 37512 --- [   biz-worker-7] o.s.r.m.l.MqttServerMessageListener      : received clientId:111 topic:/relay/k48jhTwi6jurM0xo6e2nBb3hOD/blade/sys/fq34p4ys6k8y/fq34rj51ks1t/thing/event/property/post message:MqttMessage[fixedHeader=MqttFixedHeader[messageType=PUBLISH, isDup=false, qosLevel=QoS0, isRetain=false, remainingLength=183], variableHeader=MqttPublishVariableHeader[topicName=/relay/k48jhTwi6jurM0xo6e2nBb3hOD/blade/sys/fq34p4ys6k8y/fq34rj51ks1t/thing/event/property/post, packetId=-1], payload=[B@a8f9ef4] payload:{"id":"d2cfae93-d829-4294-9436-7807f7fa6e21","version":"1.0","params":{"dx":5,"dy":5}}
2026-06-24 17:16:44.768  INFO 37512 --- [   biz-worker-9] o.s.r.m.l.MqttServerMessageListener      : received clientId:111 topic:/relay/k48jhTwi6jurM0xo6e2nBb3hOD/blade/sys/fq34p4ys6k8y/fq34rj51ks1t/thing/event/property/post message:MqttMessage[fixedHeader=MqttFixedHeader[messageType=PUBLISH, isDup=false, qosLevel=QoS0, isRetain=false, remainingLength=183], variableHeader=MqttPublishVariableHeader[topicName=/relay/k48jhTwi6jurM0xo6e2nBb3hOD/blade/sys/fq34p4ys6k8y/fq34rj51ks1t/thing/event/property/post, packetId=-1], payload=[B@4746aaa6] payload:{"id":"d2cfae93-d829-4294-9436-7807f7fa6e21","version":"1.0","params":{"dx":5,"dy":5}}
2026-06-24 17:18:39.723  INFO 37512 --- [enerContainer-4] o.s.i.c.s.impl.ServerRelayServiceImpl    : 监听到服务端订阅刷新事件
2026-06-24 17:18:39.730  INFO 37512 --- [enerContainer-4] o.s.i.c.s.impl.ServerRelayServiceImpl    : 服务端订阅刷新事件成功
2026-06-24 17:18:42.735  WARN 37512 --- [imerTaskService] o.tio.server.task.ServerHeartbeatTask    : 
Relay-Server
 ├ 当前时间 :2026-06-24T17:18:42.735048400
 ├ 连接统计
 │  ├ 共接受过连接数 :1
 │  ├ 当前连接数 :1
 │  └ 关闭过的连接数 :0
 ├ 消息统计
 │  ├ 已处理消息 :11
 │  ├ 已接收消息(packet/byte) :11/793
 │  ├ 已发送消息(packet/byte) :7/16b
 │  ├ 平均每次TCP包接收的字节数 :72.0909090909091
 │  └ 平均每次TCP包接收的业务包 :1.0
 ├ 节点统计
 │  ├ clientNodes :1
 │  ├ 所有连接 :1
 │  ├ 绑定user数 :1
 │  ├ 绑定token数 :0
 │  └ 等待同步消息响应 :0
 ├ 队列统计
 │  ├ 解码队列总数 :0
 │  ├ 处理队列总数 :0
 │  └ 发送队列总数 :0
 └ 群组
    └ groupmap: 0
2026-06-24 17:18:42.735  WARN 37512 --- [imerTaskService] o.tio.server.task.ServerHeartbeatTask    : Relay-Server, 检查心跳, 共1个连接, 取锁耗时0ms, 循环耗时0ms, 心跳检测周期:120000ms, 心跳超时时间:90000ms
2026-06-24 17:20:42.744  WARN 37512 --- [imerTaskService] o.tio.server.task.ServerHeartbeatTask    : 
Relay-Server
 ├ 当前时间 :2026-06-24T17:20:42.744081
 ├ 连接统计
 │  ├ 共接受过连接数 :1
 │  ├ 当前连接数 :1
 │  └ 关闭过的连接数 :0
 ├ 消息统计
 │  ├ 已处理消息 :14
 │  ├ 已接收消息(packet/byte) :14/799
 │  ├ 已发送消息(packet/byte) :10/22b
 │  ├ 平均每次TCP包接收的字节数 :57.07142857142857
 │  └ 平均每次TCP包接收的业务包 :1.0
 ├ 节点统计
 │  ├ clientNodes :1
 │  ├ 所有连接 :1
 │  ├ 绑定user数 :1
 │  ├ 绑定token数 :0
 │  └ 等待同步消息响应 :0
 ├ 队列统计
 │  ├ 解码队列总数 :0
 │  ├ 处理队列总数 :0
 │  └ 发送队列总数 :0
 └ 群组
    └ groupmap: 0
2026-06-24 17:20:42.744  WARN 37512 --- [imerTaskService] o.tio.server.task.ServerHeartbeatTask    : Relay-Server, 检查心跳, 共1个连接, 取锁耗时0ms, 循环耗时0ms, 心跳检测周期:120000ms, 心跳超时时间:90000ms
2026-06-24 17:21:08.133  INFO 37512 --- [  biz-worker-11] o.s.r.m.l.MqttServerMessageListener      : received clientId:111 topic:/relay/k48jhTwi6jurM0xo6e2nBb3hOD/blade/sys/fq34p4ys6k8y/fq34rj51ks1t/thing/event/property/post message:MqttMessage[fixedHeader=MqttFixedHeader[messageType=PUBLISH, isDup=false, qosLevel=QoS0, isRetain=false, remainingLength=183], variableHeader=MqttPublishVariableHeader[topicName=/relay/k48jhTwi6jurM0xo6e2nBb3hOD/blade/sys/fq34p4ys6k8y/fq34rj51ks1t/thing/event/property/post, packetId=-1], payload=[B@10d074bb] payload:{"id":"c5fa11e1-708c-4a78-b153-772064e628fa","version":"1.0","params":{"dx":8,"dy":8}}
2026-06-24 17:22:42.735  WARN 37512 --- [imerTaskService] o.tio.server.task.ServerHeartbeatTask    : 
3.

五、若有更多详细信息,请在下面提供。

1条回答
  • 服务转发:
    每上报一条数据,都会自动转发一份到指定的mqtt,相当于原路转发没有任何逻辑,客户端自由订阅然后获取数据


    转发规则:

    上报一条数据,需要通过规则引擎判断,并且执行完各个规则后,把符合条件的数据,调用转发规则的配置进行mqtt转发,同时除了mqtt外,还有多种不同的途径可以配置

    作者追问:1小时前

    必须创建场景联动才能用转发规则么

    回答: 1小时前

    要用到规则,必须要场景联动的,具体的完整文档以及操作可以看这边的手册:https://iot.bladex.cn/feature/engine/scene/intro.html


    0 讨论(0)
提交回复