sessions 命令

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)