sessions 命令
sessions 命令查询 MQTT 连接会话。 EMQ X 消息服务器会为每个连接创建会话,clean_session 标记 true,创建临时(transient)会话;clean_session 标记为 false,创建持久会话(persistent)。
sessions list | 查询全部会话 |
---|---|
sessions show <ClientId> | 根据 ClientID 查询会话 |
sessions list
查询全部会话:
$ ./bin/emqx_ctl sessions list
Session(clientid, clean_start=true, expiry_interval=0, subscriptions_count=0, max_inflight=32, inflight=0, mqueue_len=0, mqueue_dropped=0, awaiting_rel=0, deliver_msg=0, enqueue_msg=0, created_at=1553760799)
Session(mosqsub/44101-airlee.lo, clean_start=true, expiry_interval=0, subscriptions_count=0, max_inflight=32, inflight=0, mqueue_len=0, mqueue_dropped=0, awaiting_rel=0, deliver_msg=0, enqueue_msg=0, created_at=1553760314)
返回 Session 对象属性:
clean_start | 建立连接时是否清理相关的会话 |
---|---|
expiry_interval | 会话过期间隔 |
subscriptions_count | 当前订阅数量 |
max_inflight | 飞行窗口(最大允许同时下发消息数) |
inflight | 当前正在下发的消息数 |
mqueue_len | 当前缓存消息数 |
mqueue_dropped | 会话丢掉的消息数 |
awaiting_rel | 等待客户端发送 PUBREL 的 QoS2 消息数 |
deliver_msg | 转发的消息数(包含重传) |
enqueue_msg | 缓存过的消息数 |
created_at | 会话创建时间戳 |
sessions show <ClientId>
根据 ClientId 查询会话:
$ ./bin/emqx_ctl sessions show clientid
Session(clientid, clean_start=true, expiry_interval=0, subscriptions_count=0, max_inflight=32, inflight=0, mqueue_len=0, mqueue_dropped=0, awaiting_rel=0, deliver_msg=0, enqueue_msg=0, created_at=1553760799)