IoT 事件检测 - AWS IoT Events 已停止服务:迁移指南
AWS IoT Events 已于 2026 年 5 月 20 日终止支持。介绍官方迁移方案(使用 Kinesis Data Streams + Lambda 重新实现状态监控)以及检测器模型停用前的机制。
服务终止与迁移方案
AWS IoT Events 已于 2026 年 5 月 20 日终止支持(End of Support),并已自 2025 年 5 月 20 日起停止接受新客户。AWS 官方迁移指南介绍了如何使用 Amazon Kinesis Data Streams 与 AWS Lambda 重新实现类似检测器模型的状态监控,以及如何迁移 AWS IoT SiteWise 报警。本文作为历史参考资料与迁移指南予以保留。
IoT 设备状态监控的挑战
IoT 设备监控不仅需要简单的阈值超限检测,还需要检测复杂的状态转换。例如温度超过 80 度持续 5 分钟以上则告警、振动值超出正常范围后 10 分钟内未恢复正常则通知维护团队、连续 3 次心跳中断则判定设备离线等条件。AWS IoT Events 曾以托管状态机提供这些复杂的状态监控逻辑。
检测器模型与告警
当时的检测器模型是由状态 (State)、转换条件 (Transition) 和操作 (Action) 构成的状态机。例如温度监控的检测器模型定义正常、警告、异常三种状态,基于温度阈值设置状态转换。各状态的进入时 (onEnter)、停留中 (onInput)、退出时 (onExit) 可执行操作。按设备键(设备 ID)独立管理状态实例,数千台设备各自独立进行状态管理。告警模型则是简化版检测器,适合简单的阈值监控。
操作与集成
检测器模型在状态转换时曾可执行多种操作。通过 SNS 通知操作员、通过 Lambda 执行自定义逻辑、向 SQS 发送消息触发下游处理、通过 IoT Core 发布 MQTT 消息向设备发送命令、向 DynamoDB 写入事件日志、向 Firehose 发送数据积累到 S3 等。多个操作可并行执行,实现复杂的自动响应工作流。
IoT Events 费用
随着服务停止,以下计费体系已不复存在(作为历史记录保留)。IoT Events 按消息评估次数计费,消息以 1 KB 为单位计量。在美国东部(弗吉尼亚北部),每月前 1 亿次评估为每 100 万次 15 美元,用量增加后阶梯式降至每 100 万次 10 美元、5 美元、3 美元。告警单独计费,当月至少评估过一次消息的活跃告警每个每月 0.10 美元,其消息评估仍按标准费率另计。例如 1,000 台设备每分钟各发送一条 1 KB 消息,每月约产生 4,320 万次评估,在美国东部约合 648 美元。数千台设备每分钟发送消息的环境中评估次数会急剧增加,因此当时的成本优化惯例是通过 IoT Core 规则引擎预过滤,仅将接近阈值的值发送到 IoT Events。
总结 - 迁移指南
AWS IoT Events 曾用于检测 IoT 设备的复杂状态转换并执行自动操作,但已于 2026 年 5 月 20 日终止支持。官方迁移步骤展示了以下架构:遥测数据进入 Kinesis Data Streams,由 Lambda 评估状态转换逻辑,再通过 SNS 等服务执行操作。本文中的设计思路,如仅在接近阈值时处理的预过滤、按设备隔离的状态管理,可直接沿用于重新实现后的架构。