跳到主要内容

查看客户端配置信息

您可以使用 show 用户 EXEC 命令来监控和验证给定 Solace PubSub+ 事件代理上的客户端配置和状态:

  • 显示客户端信息
  • 显示客户端配置文件信息
  • 显示客户端用户名信息
  • 显示聚合客户端统计信息
  • 清除客户端统计信息

显示客户端信息

要显示客户端的配置和状态,请输入以下用户 EXEC 命令:

solace> show client <name> [client-username <username>] [message-vpn <vpn-name>] [{{stats [congestion | queues]} | {connections [wide]}} | {subscriptions} | {{message-spool | message-spool-stats | {transaction-stats [session <session-id>]}} [{ingress | egress} [flow <flow-id>]]} | {sorted-stats [<stats-to-show>] [sort-by <stats-to-sort-by>] [clear-high-water-marks]} | {web-transport}] [detail] [primary] [backup] [static] slow-subscriber

其中:

<name> 是客户端的完整名称,或者使用通配符字符 ? 表示名称中的一个字符,或者使用通配符字符 * 表示名称中的零个或多个字符,其中仅输入通配符字符 * 用于名称将显示所有客户端。

<username> 是客户端用户名账户的完整用户名,或者使用通配符字符 ? 表示名称中的一个字符,或者使用通配符字符 * 表示名称中的零个或多个字符,其中仅输入通配符字符 * 用于名称将显示所有客户端用户名账户。

<vpn-name> 是消息 VPN 的完整名称,或者使用通配符字符 ? 表示名称中的一个字符,或者使用通配符字符 * 表示名称中的零个或多个字符,其中仅输入通配符字符 * 用于名称将显示所有消息 VPN。

stats 要求显示客户端流量统计信息

输入 show client * stats 而不指定客户端将按客户端逐个显示所有现有客户端的统计信息。

congestion 要求以降序显示拥塞丢弃统计信息

queues 要求显示客户端队列信息

connections 要求显示事件代理和客户端的 TCP 连接状态信息

connections wide 要求以宽屏计算机显示格式(300+ 字符宽度)显示事件代理和客户端的详细 TCP 连接状态信息。显示列的描述在下面的“显示客户端连接宽输出”表中提供。

subscriptions 要求显示客户端订阅信息

message-spool 要求显示客户端消息池配置和状态

message-spool-stats 要求显示客户端消息池统计信息

transaction-stats 要求显示事务会话统计信息

session <session-id> 要求显示由 <session-id> 指定的用户会话的事务会话统计信息。有效值为 0 到 4294967295

ingress 要求显示入口消息池信息和统计信息

egress 要求显示出口消息池信息和统计信息

flow <flow-id> 要求显示与入口或出口消息流相关联的消息流标识符,由 <flow-id> 指定。有效值为 0 到 16383

sorted-stats 要求按降序显示 <stats-to-show> 指定的客户端统计信息

<stats-to-show> 要求显示以下统计信息中的任何一个,作为以逗号分隔的列表输入(不包含空格)。有效输入为:

  • total-client-messages-sent
  • total-client-messages-received
  • total-client-bytes-sent
  • total-client-bytes-received
  • total-egress-discards
  • round-trip-time-smooth-us
  • high-water-mark-work
  • current-ingress-message-rate-per-second
  • current-egress-message-rate-per-second
  • average-ingress-message-rate-per-minute
  • average-egress-message-rate-per-minute
  • current-ingress-byte-rate-per-second
  • current-egress-byte-rate-per-second
  • average-ingress-byte-rate-per-minute
  • average-egress-byte-rate-per-minute
  • num-subscriptions

sort-by 要求按 <stats-to-sort-by> 指定的统计信息对 'sorted-stats' 参数显示的客户端统计信息进行排序

<stats-to-sort-by> 指定 'sorted-stats' 输出的排序依据统计信息,作为以逗号分隔的列表输入(不包含空格)。如果存在多个条目,则显示多组统计信息,每组仅基于一个标准进行排序。

clear-high-water-marks 要求清除高水位标记统计信息

web-transport 要求显示 Web 客户端传输连接的统计信息

detail 要求显示指定客户端的详细信息

primary 要求仅显示与主虚拟路由器关联的客户端的信息

backup 要求仅显示与备份虚拟路由器关联的客户端的信息

static 要求仅显示与静态虚拟路由器关联的客户端的信息

slow-subscriber 要求仅显示被认为是慢速订阅者的客户端的信息。慢速订阅者是那些始终无法以提供的消息速率消费其消息的客户端,这导致它们的出口队列填满。(如果客户端未能响应 TCP 心跳,或者事件代理必须向客户端发送定时 TCP 重传,客户端也可以被认为是慢速订阅者。)要确定订阅者有多慢,事件代理会测量在过去一分钟内,它有数据要发送但客户端的 TCP 窗口关闭的秒数。这种慢速以百分比表示。

要在 CLI 输出中查看订阅者的阻塞百分比,请输入 show client <name> connections wide 用户 EXEC 命令。

显示客户端连接宽输出

以下表格描述了 show client <name> connections wide 命令返回的信息。

描述
用户名当前与连接关联的客户端的名称。
Proto使用的协议:
  • tcp – 使用 C、.NET、Java 或 JMS API 的远程客户端的 TCP 连接
  • web – 使用 JavaScript API 的远程客户端的 HTTP 会话下的 TCP 连接
  • intnl – 事件代理使用的内部连接 | | 接收队列字节 | 事件代理接收队列中当前的字节数,用于 TCP 连接。 | | 接收队列段 | 事件代理接收队列中当前的 TCP 段数,用于 TCP 连接。 | | 发送队列字节 | 客户端在客户端的出口队列(在 'show client <name> stats' 队列的输出中可见)和 TCP 发送队列中当前排队的字节数。 | | 发送队列消息 | 客户端在其出口队列中当前排队的消息数(在 'show client <name> stats' 队列的输出中可见)。 | | 本地地址 | 连接的事件代理端的 IP 地址和 TCP 端口。 | | 客户端地址 | 连接的客户端端的 IP 地址和 TCP 端口。 | | 状态 | TCP 连接的状态。请参阅 RFC 793 了解更多信息。 | | 最大段大小 | 为客户端连接配置的最大段大小(MSS)。MSS 在客户端配置文件中配置。请参阅 RFC 879 了解更多信息。 | | 发送字节 | 事件代理在 TCP 连接上发送的字节数。这是一个在 4GiB 时回绕的 32 位数字。 | | 接收字节 | 事件代理在 TCP 连接上接收的字节数。这是一个在 4GiB 时回绕的 32 位数字。 | | 重传时间(毫秒) | TCP 连接的重传超时(RTO)以毫秒为单位。请参阅 RFC 2988 了解更多信息。 | | 往返平滑(微秒) | TCP 连接的平滑往返时间(SRTT)以微秒为单位。请参阅 RFC 2988 了解更多信息。 | | 往返最小(微秒) | TCP 连接的最小往返时间以微秒为单位。请参阅 RFC 2988 了解更多信息。 | | 往返变化(微秒) | TCP 连接的往返时间变化(RTTVAR)以微秒为单位。请参阅 RFC 2988 了解更多信息。 | | 广告窗口大小 | 在 TCP 连接的远程端向客户端广告的接收窗口大小(以字节为单位)。请参阅 RFC 793 了解更多信息。 | | 传输窗口大小 | 发送窗口大小(以字节为单位)。请参阅 RFC 793 了解更多信息。 | | 带宽窗口大小 | 这是一个实验性值,事件代理不使用。 | | 拥塞窗口大小 | 拥塞窗口大小(以字节为单位,cwnd)。请参阅 RFC 5681 了解更多信息。 | | 慢启动阈值 | 慢启动阈值(以字节为单位,ssthresh)。请参阅 RFC 5681 了解更多信息。 | | 接收乱序 | 接收到的 TCP 段乱序的数量。 | | 快速重传 | 由于收到重复确认('ACKs')而重传的 TCP 段的数量。请参阅 RFC 5681 了解更多信息。 | | 定时重传 | 由于等待 ACK 超时而重传的 TCP 段的数量。请参阅 RFC 793 了解更多信息。 | | 连接正常运行时间(秒) | 连接的正常运行时间以秒为单位。 | | 阻塞(%) | 阻塞百分比表示事件代理在 TCP 连接上有数据要发送但无法发送(例如,由于发送窗口关闭)的时间百分比。 | | 接口 | 用于发送 TCP 连接的以太网帧的物理接口。 |

显示客户端连接宽输出

清除客户端统计信息

要清除一个或多个客户端的统计信息,请输入以下特权 EXEC 命令。一旦输入清除命令,当前统计信息将重置为零,并重新开始记录。

solace# clear client <name> [message-vpn <vpn-name>] [primary] [backup] [static] stats

其中:

<name> 是客户端的完整名称,或者使用通配符字符 ? 表示名称中的一个字符,或者使用通配符字符 * 表示名称中的零个或多个字符,其中仅输入通配符字符 * 用于名称将清除所有客户端的统计信息。

<vpn-name> 是消息 VPN 的完整名称,或者使用通配符字符 ? 表示名称中的一个字符,或者使用通配符字符 * 表示名称中的零个或多个字符,其中仅输入通配符字符 * 用于名称指定所有消息 VPN。它要求仅清除分配给此消息 VPN 的客户端的统计信息。

primary 表示仅清除与主虚拟路由器关联的客户端的统计信息。

backup 表示仅清除与备份虚拟路由器关联的客户端的统计信息。

static 表示仅清除与静态虚拟路由器关联的客户端的统计信息。

显示客户端配置文件信息

要显示客户端配置文件配置,请输入以下用户 EXEC 命令:

solace> show client-profile [<name>] [message-vpn <vpn-name>] [detail]

其中:

<name> 是客户端配置文件的名称。不输入名称将显示事件代理上配置的所有客户端配置文件。

<vpn-name> 是客户端配置文件所属的消息 VPN。vpn-name 可以是消息 VPN 的完整名称,使用通配符字符 ? 表示名称中的一个字符,或者使用通配符字符 * 表示名称中的零个或多个字符,其中仅输入通配符字符 * 用于名称将显示所有消息 VPN。

detail 要求显示详细的客户端配置文件信息,包括使用该配置文件的所有客户端用户名账户的列表

显示客户端用户名信息

要显示客户端用户名的配置和状态,请输入以下用户 EXEC 命令:

solace> show client-username <name> [message-vpn <vpn-name>] [stats | detail | guaranteed-endpoints-owned]

其中:

<name> 是客户端用户名账户的完整用户名,或者使用通配符字符 ? 表示名称中的一个字符,或者使用通配符字符 * 表示名称中的零个或多个字符,其中输入通配符字符 * 用于用户名将显示所有客户端用户名账户。

<vpn-name> 是客户端用户名所属的消息 VPN。vpn-name 可以是消息 VPN 的完整名称,使用通配符字符 ? 表示名称中的一个字符,或者使用通配符字符 * 表示名称中的零个或多个字符,其中仅输入通配符字符 * 用于名称将显示所有消息 VPN。

stats 要求显示客户端用户名统计信息

detail 要求显示详细的客户端用户名信息

guaranteed-endpoints-owned 要求显示客户端用户名拥有的保证端点

清除客户端用户名统计信息

要清除一个或多个客户端用户名的统计信息,请输入以下特权 EXEC 命令:

solace> enable
solace# clear client-username <name> [message-vpn <vpn-name>] stats

其中:

<name> 是客户端用户名的完整名称,或者使用通配符字符 ? 表示名称中的一个字符,或者使用通配符字符 * 表示名称中的零个或多个字符,其中仅输入通配符字符 * 用于名称将清除所有客户端的统计信息。

<vpn-name> 是消息 VPN 的完整名称,或者使用通配符字符 ? 表示名称中的一个字符,或者使用通配符字符 * 表示名称中的零个或多个字符,其中仅输入通配符字符 * 用于名称指定所有消息 VPN。它要求仅清除分配给此消息 VPN 的客户端的统计信息。

显示聚合客户端统计信息

要查看事件代理上的全局客户端统计信息,其中显示的统计信息是所有现有客户端统计信息的聚合,请输入以下用户 EXEC 命令:

solace> show stats client [detail]

其中:

detail 要求显示详细的客户端统计信息

以下表格描述了详细客户端统计信息中记录的信息。

统计信息描述
客户端统计信息:
总客户端数事件代理上的连接总数。
已连接总客户端数已连接客户端的总数。
未压缩以禁用压缩方式连接的已连接客户端总数。
已压缩以启用压缩方式连接的已连接客户端总数。
SSL使用 SSL 或 TSL 协议连接的客户端总数。
非 SSL未使用 SSL 或 TSL 协议连接的客户端总数。
服务 SMF使用 Solace 消息格式(SMF)协议连接的客户端总数。
服务 Web 传输使用 web-socket 协议连接的客户端总数。
服务 REST使用 REST 连接的客户端总数。
服务 MQTT使用 MQTT 协议连接的客户端总数。
客户端消息统计信息:
总客户端消息收到和发送的消息总数。
客户端数据消息:
客户端数据消息收到和发送的数据消息总数。
持久收到和发送的持久数据消息总数。
非持久收到和发送的非持久数据消息总数。
直接收到和发送的直接数据消息总数。
大消息收到和发送的大数据消息总数。
DTO 消息收到和发送的 DTO 数据消息总数。
客户端控制消息:
客户端控制消息收到和发送的客户端控制消息总数。
登录收到和发送的客户端登录消息总数。
证书吊销检查为认证客户端进行的证书吊销检查总数。
允许有效认证的客户端总数,其证书对吊销检查返回有效响应。
允许吊销认证的客户端总数,其证书对吊销检查返回无效响应。
允许未知认证的客户端总数,其证书无法通过吊销检查确定。
拒绝未知因证书无法通过吊销检查确定而被拒绝的客户端总数。
拒绝吊销因证书对吊销检查返回无效响应而被拒绝的客户端总数。
拒绝重复客户端因为是重复客户端而被拒绝的客户端总数。
拒绝授权失败因授权失败而被拒绝的客户端总数。
拒绝客户端连接 ACL因客户端连接 ACL 禁止其 IP 地址而被拒绝的客户端总数。
当前速率(1 秒)每秒收到和发送消息的当前速率。
平均速率(60 秒)每 60 秒收到和发送消息的平均速率(见下文注释)。
更新收到和发送的客户端更新消息总数。
JNDI 当前速率(1 秒)客户端每秒收到和发送的 JNDI 查询总数。
JNDI 平均速率(60 秒)客户端每 60 秒收到和发送的 JNDI 查询总数(见下文注释)。
KeepAliveAPI 收到和发送的 KeepAlive 消息总数。
确认控制收到和发送的确认控制消息总数。
添加订阅消息(添加订阅的统计信息):
客户端添加客户端收到和发送的添加订阅总数。
订阅管理器添加订阅管理器收到和发送的添加订阅总数。
已存在已存在的订阅总数。
空间不足添加订阅达到空间不足阈值的总次数。
超过最大值添加订阅超过最大阈值的总次数。
解析错误解析添加订阅时发生的错误总数。
拒绝订阅主题 ACL因订阅者 ACL 而被拒绝的订阅添加总数。
拒绝订阅主题保留因为是保留订阅而被拒绝的订阅添加总数。
共享订阅权限拒绝未被授予添加共享订阅权限的客户端总数。
订阅管理器(添加订阅的订阅管理器客户端状态):
无权限订阅管理器没有权限为其他客户端控制添加订阅的总次数。
未找到客户端名称订阅管理器未找到客户端名称的总次数。
共享订阅权限拒绝订阅管理器未授予的共享订阅添加总数。
移除订阅消息(移除订阅的统计信息):
客户端移除客户端收到和发送的移除订阅总数。
订阅管理器移除订阅管理器收到和发送的移除订阅总数。
未找到未找到的订阅总数。
解析错误解析移除订阅时发生的错误总数。
拒绝取消订阅主题 ACL客户端未被订阅者 ACL 允许取消订阅的主题总数。
订阅管理器(移除订阅的订阅管理器客户端状态):
无权限订阅管理器没有权限为其他客户端控制移除订阅的总次数。
未找到客户端名称订阅管理器未找到客户端名称的总次数。

详细客户端统计信息描述

  • Avg. Rate (60 sec interval)—一个统计值,显示基于 60 秒时间常数的平滑函数的近似值(而非平均值)。
  • Elided—因使用消息省略功能而丢弃的消息数量。
  • Message Spool Congestion—事件代理丢弃的提升消息数量。这种情况发生在消息到达速度比消息池处理速度更快时。
  • Message Spool Egress Discards—因过期的生存时间(TTL)、管理删除或两者兼而被删除或丢弃的保证消息数量。
  • Client Not Connected—因断开连接的客户端应用程序而丢弃的消息数量。

清除客户端统计信息

要清除一个或多个客户端的统计信息,请输入以下特权 EXEC 命令。一旦输入此清除命令,当前统计信息将重置为零,然后重新开始记录。

solace> enable
solace# clear client <name> [message-vpn <vpn-name>] [primary] [backup] [internal] stats

其中:

<name> 是客户端的完整名称,或者使用通配符字符 ? 表示名称中的一个字符,或者使用通配符字符 * 表示名称中的零个或多个字符,其中仅输入通配符字符 * 用于名称将清除所有客户端的统计信息。

<vpn-name> 是消息 VPN 的完整名称,或者使用通配符字符 ? 表示名称中的一个字符,或者使用通配符字符 * 表示名称中的零个或多个字符,其中仅输入通配符字符 * 用于名称指定所有消息 VPN。它要求仅清除分配给此消息 VPN 的客户端的统计信息。

primary 要求仅清除主客户端的统计信息

backup 要求仅清除备份客户端的统计信息

internal 要求仅清除内部客户端的统计信息

要清除存储的所有全局客户端统计信息以及各个客户端的统计信息,请输入 clear stats client 特权 EXEC 命令。一旦输入清除命令,当前统计信息将重置为零,然后重新开始记录。

solace> enable
solace# clear stats client