类 MonitorAggregatingMessageCorrelationStrategy

java.lang.Object
cn.herodotus.stirrup.transform.emqx.aggregator.MonitorAggregatingMessageCorrelationStrategy
所有已实现的接口:
org.springframework.integration.aggregator.CorrelationStrategy

public class MonitorAggregatingMessageCorrelationStrategy extends Object implements org.springframework.integration.aggregator.CorrelationStrategy

Description: Emqx 监控消息数据集合相关性策略

Emqx 监控各类消息中,没有 CORRELATION_ID, SEQUENCE_NUMBER, SEQUENCE_SIZE 等头信息,以及可以作为聚合的标志性信息。需要自己指定一定的策略,保证一系列信息的相关性。 Emqx 监控各类监控信息,可以通过订阅系统主题获取。但是订阅到的各类指标信息时间戳是不同的,所以无法使用时间戳作为关联性信息。 通过观察,Emqx 监控数据在每个发布周期内,最后一个消息总是来源于主题 "$SYS/brokers"。所以当前就以主题 "$SYS/brokers" 为标志,当接收到主题 "$SYS/brokers" 的消息,就把之前的所有的监控消息聚合。

注意:第一次连接 Emqx 会接收到部分系统主题信息,但是不完整,所以这部分信息应该被排除。

作者:
: gengwei.zheng
Date:
: 2023/11/11 16:24
  • 构造器详细资料

  • 方法详细资料

    • getCorrelationKey

      public Object getCorrelationKey(org.springframework.messaging.Message<?> message)
      指定者:
      getCorrelationKey 在接口中 org.springframework.integration.aggregator.CorrelationStrategy