$SYS-系统主题
EMQ 消息服务器周期性发布自身运行状态、MQTT 协议统计、客户端上下线状态到 $SYS/ 开头系统主题。
$SYS 主题路径以 “$SYS/brokers/{node}/” 开头,’${node}’ 是 Erlang 节点名称:
$SYS/brokers/emqttd@127.0.0.1/version $SYS/brokers/emqttd@host2/uptime
注解
默认只允许 localhost 的 MQTT 客户端订阅 $SYS 主题,可通过 etc/acl.config 修改访问控制规则。
$SYS 系统消息发布周期,通过 etc/emq.conf 配置:
## System Interval of publishing broker $SYS Messages
mqtt.broker.sys_interval = 60
服务器版本、启动时间与描述消息
主题 | 说明 |
---|---|
$SYS/brokers | 集群节点列表 |
$SYS/brokers/${node}/version | EMQ 服务器版本 |
$SYS/brokers/${node}/uptime | EMQ 服务器启动时间 |
$SYS/brokers/${node}/datetime | EMQ 服务器时间 |
$SYS/brokers/${node}/sysdescr | EMQ 服务器描述 |
MQTT 客户端上下线状态消息
$SYS 主题前缀: $SYS/brokers/${node}/clients/
主题(Topic) | 数据(JSON) | 说明 |
---|---|---|
${clientid}/connected |
|
Publish when a client connected |
| ts: 1432648482} | |
username: “test”, ts: 1432749431} | |
‘connected’ 消息 JSON 数据:
{
ipaddress: "127.0.0.1",
username: "test",
session: false,
protocol: 3,
connack: 0,
ts: 1432648482
}
‘disconnected’ 消息 JSON 数据:
{
reason: normal,
ts: 1432648486
}
Statistics - 系统统计消息
系统主题前缀: $SYS/brokers/${node}/stats/
Clients - 客户端统计
主题(Topic) | 说明 |
clients/count | 当前客户端总数 |
clients/max | 最大客户端数量 |
Sessions - 会话统计
主题(Topic) | 说明 |
sessions/count | 当前会话总数 |
sessions/max | 最大会话数量 |
Subscriptions - 订阅统计
主题(Topic) | 说明 |
subscriptions/count | 当前订阅总数 |
subscriptions/max | 最大订阅数量 |
Topics - 主题统计
主题(Topic) | 说明 |
topics/count | 当前 Topic 总数(跨节点) |
topics/max | Max number of topics |
Metrics - 收发流量/报文/消息统计
系统主题(Topic)前缀: $SYS/brokers/${node}/metrics/
收发流量统计
主题(Topic) | 说明 |
bytes/received | 累计接收流量 |
bytes/sent | 累计发送流量 |
MQTT报文收发统计
主题(Topic) | 说明 |
packets/received | 累计接收 MQTT 报文 |
packets/sent | 累计发送 MQTT 报文 |
packets/connect | 累计接收 MQTT CONNECT 报文 |
packets/connack | 累计发送 MQTT CONNACK 报文 |
packets/publish/received | 累计接收 MQTT PUBLISH 报文 |
packets/publish/sent | 累计发送 MQTT PUBLISH 报文 |
packets/subscribe | 累计接收 MQTT SUBSCRIBE 报文 |
packets/suback | 累计发送 MQTT SUBACK 报文 |
packets/unsubscribe | 累计接收 MQTT UNSUBSCRIBE 报文 |
packets/unsuback | 累计发送 MQTT UNSUBACK 报文 |
packets/pingreq | 累计接收 MQTT PINGREQ 报文 |
packets/pingresp | 累计发送 MQTT PINGRESP 报文 |
packets/disconnect | 累计接收 MQTT DISCONNECT 报文 |
MQTT 消息收发统计
主题(Topic) | 说明 |
messages/received | 累计接收消息 |
messages/sent | 累计发送消息 |
messages/retained | Retained 消息总数 |
messages/dropped | 丢弃消息总数 |
Alarms - 系统告警
系统主题(Topic)前缀: $SYS/brokers/${node}/alarms/
主题(Topic) | 说明 |
${alarmId}/alert | 新产生告警 |
${alarmId}/clear | 清除告警 |
Sysmon - 系统监控
系统主题(Topic)前缀: $SYS/brokers/${node}/sysmon/
主题(Topic) | 说明 |
long_gc | GC 时间过长警告 |
long_schedule | 调度时间过长警告 |
large_heap | Heap 内存占用警告 |
busy_port | Port 忙警告 |
busy_dist_port | Dist Port 忙警告 |