$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 忙警告 |