Using CLI Show Commands to Monitor PubSub+ Cache
You can use the following show commands to monitor the PubSub+ Cache configuration and operational status:
Show Product Key
To view the system product keys and features that they unlock, enter the following User EXEC command:
solace> show product-key
solace> show product-key
Product Key : <key-value>
Unlocked Features : 1
Solace Last Value Cache (SolCache)
Show Distributed Cache
To view the configuration and status of a Distributed Cache on the event broker, enter the following User EXEC command:
solace> show distributed-cache {<name> [message-vpn <vpn-name>] [detail] | summary}
Where:
<name> is the Distributed Cache name
<vpn-name> is the name of the associated Message VPN
detail asks to show detailed information for the Distributed Cache
summary asks to show a summary of all Distributed Caches, their Cache Clusters, and associated PubSub+ Cache Instances.
solace# show distributed-cache *
Cache Management Status Flags: A=Admin O=Oper R=Redundancy
Status Values: U=Up U=Up A=Auto
D=Down D=Down P=Primary
B=Backup
Clusters Instances Lost
Cache Name Message VPN A O R (up/conf) (up/conf) Msg
--------------------------- ------------------ ------ --------- ---------- ----
cacheName1 myVpn U U A 0 / 1 0 / 1 No
cacheName2 myVpn U U A 0 / 0 0 / 0 No
solace# show distributed-cache * detail
Distributed Cache : cacheName1
Message VPN : myVpn
Cache Management
Admin State : Enabled
Oper State : Up
Last Failure Reason :
Last Failure Time : never
Redundancy : Auto
Schedule Delete Message : never
Heartbeat Interval (sec) : 10
Clusters (up) : 0
Clusters (configured) : 1
Instances (up) : 0
Instances (configured) : 1
Lost Message : No
Distributed Cache : cacheName2
Message VPN : myVpn
Cache Management
Admin State : Enabled
Oper State : Up
Last Failure Reason :
Last Failure Time : never
Redundancy : Auto
Schedule Delete Message : never
Heartbeat Interval (sec) : 10
Clusters (up) : 0
Clusters (configured) : 0
Instances (up) : 0
Instances (configured) : 0
Lost Message : No
solace# show distributed-cache summary Total Number of Distributed Caches : 2 Total Number of Cache Clusters : 1 Total Number of Cache Instances : 1
The cacheManagementUp attribute reflects the operational state of distributed cache management. The state is up if the following conditions are satisfied:
- DR/Replication for the Message VPN is either
disabledorDR-active - The software event broker associated with the Distributed Cache is in an active role for the associated Message VPN
- The Distributed Cache is enabled
Show Cache Cluster
To view the contents of a Cache Cluster under a Distributed Cache on the event broker, enter the following User EXEC command:
solace> show cache-cluster <name> [distributed-cache <cache-name>] [message-vpn <vpn-name>] [detail | topics [filter <topic-pattern>]]
Where:
<name> is the Cache Cluster name
<cache-name> is the name of the Distributed Cache the Cache Cluster belongs to
<vpn-name> is the name of the associated Message VPN the Cache Cluster belongs to
<cluster-name> is the name of the associated Cache Cluster
detail asks to show detailed information for the Cache Cluster
topics asks to show information on topics the Cache Cluster is responsible for
filter <topic-pattern> asks to filter the topic information based on the specified topic string pattern
Examples:
solace> show cache-cluster *
Admin Instances Config Lost Cluster Name Cache Name Message VPN Status (up/conf) Topics Msg ---------------- ---------------- --------------- ------ ---------- ------ ---- eq-cluster1 equities default Up 2 / 2 1 No eq-cluster2 equities default Up 0 / 1 1 No eq-cluster3 equities default Up 0 / 1 1 No fi-cluster1 fixed-income default Up 0 / 4 0 No fi-cluster2 fixed-income default Up 0 / 0 0 No fi-cluster3 fixed-income default Up 0 / 0 0 No
solace> show cache-cluster eq-cluster1 detail
Cache Cluster : eq-cluster1
Distributed Cache : equities
Message VPN : default
Admin Status : Up
Deliver-To-One Override : Enabled
Max Memory (MB) : 2048
Max Msgs Per Topic : 1
Max Topics : 2000000
Message Lifetime : Unlimited
New Topic Advertisement : Disabled
Request Queue Depth : 100000
Instances (up) : 2
Instances (configured) : 2
Topics (configured) : 1
Lost Message : No
Global Caching
Heartbeat Interval (sec) : 3
Topic Lifetime (sec) : 3600
Admin Status : Disabled
Topic Prefixes (configured) : 3
Home Cache Clusters : 2
abc
xyz
Event Threshold Set Value Clear Value
---------------------------- ------------ ------------
Data Byte Rate (bytes/sec) 2000000000 1500000000
Data Message Rate (msgs/sec) 48000 36000
Max Memory (%) 80 60
Max Topics (%) 80 60
Request Queue Depth (%) 80 60
Request Rate (msgs/sec) 80000 1000
Response Rate (msgs/sec) 80000 1000
Show Cache Instance
To view the contents of local and remote PubSub+ Cache Instances under a Distributed Cache on the event broker, enter the following User EXEC command:
solace> show cache-instance <name> [cache-cluster <cluster-name>] [distributed-cache <cache-name>] [message-vpn <vpn-name>] [detail | remote {status | home-cache-clusters | topics [detail] [filter <topic-pattern>] [type {local | global}]}]
Where:
<name> is the PubSub+ Cache Instance name
<cluster-name> is the name of the Cache Cluster that the PubSub+ Cache Instance belongs to
<cache-name> is the name of the Distributed Cache that the PubSub+ Cache Instance belongs to
<vpn-name> is the name of the Message VPN that the PubSub+ Cache Instance belongs to
detail shows detailed information on the specified PubSub+ Cache Instance
remote shows the statistics of the PubSub+ Cache Instances managed by the Designated Router over the message bus
status shows status information on the PubSub+ Cache Instances
home-cache-clusters shows remote global caching home-cache-clusters status
topics shows information on topics cached by the PubSub+ Cache Instances
detail shows a more detailed display of each topic
filter <topic-pattern> filters the topic information based on the specified topic string pattern. Filter topics can contain wildcards * or ?
type shows only topics of the specified type
local shows only local topics
global shows only global topics
For information on the possible administrative and operational states that a PubSub+ Cache Instance could be in, see PubSub+ Cache Instance States.
Examples:
solace> show cache-instance *
Admin Oper Auto Stop Lost Cache Instance> Cache-Cluster Status Status Start On Loss Msg -------------------- -------------------- ------ -------- ----- -------- --- fi-cluster1-instance fi-cluster1 Up NotAvail Yes Yes No fi-cluster1-instance fi-cluster1 Down NotAvail No No No fi-cluster1-instance fi-cluster1 Up NotAvail Yes Yes No eq-cluster1-instance eq-cluster1 Up Up Yes Yes No eq-cluster1-instance eq-cluster1 Up Up Yes Yes No eq-cluster2-instance eq-cluster2 Up NotAvail Yes Yes No
solace> show cache-instance eq-cluster1-instance1 detail
Cache Instance : eq-cluster1-instance1
Cache Cluster : eqcluster1
Distributed Cache : equities
Message VPN : default
Admin Status : Up
Operational Status : Up
Auto Start : Yes
Stop On Lost Message : Yes
Last Stopped : Never
Reason For Last Stop :
Lost Message : No
Last Set Rxd : Never
Last Clear Txd : Never
Reg With Appliance : Feb 19 2012 20:39:05
Last Heartbeat Rxd : Feb 20 2012 15:39:35
solace> show cache-instance instance1 remote status
Cache Instance : instance1
Cache Cluster : cluster1
Distributed Cache : dist-cache-001
Message VPN : default
Operational Status : Up
Cache Software Version : 5.5.0.1
Cache Software Build Date : May 4 2012 13:22:35
API Version : 5.5.0.3
API Platform : Linux26-x86_64_opt
User : 'root' Computer: 'perf-128-61' Process ID: 1992
Plugin Description : Solace Default Plugin v1.0
Plugin Status : DISABLED
Connected To Host : host '192.168.164.80', IP 192.168.164.80:55555
Client : instance1
Current Time : May 24 2012 13:58:30 EDT
Process Start Time : May 24 2012 11:23:15 EDT
Last Connection Uptime : May 24 2012 11:23:15 EDT
Last Connection Downtime : Never
Total Mem Utilization (MB) : 101
CPU Utilization (%) : 2
Heartbeat Requests Txd : 974
Heartbeat Responses Rxd : 974
Global Caching
Heartbeat Requests Txd : 0
Heartbeat Responses Rxd : 0
Home Clusters Connected : 0
Home Clusters Configured : 0
Suspect Topics : 0
New Topic Advertisements Txd : 0
Config Updates Rxd : 13
Invalid Requests Rxd : 0
Cache Requests Rxd : 3860
Local Topics : 3860
Global Topics : 0
Global Topics Forwarded : 0
Timeout : 0
Cache Responses Txd : 3860
OK : 3343
No Match : 517
Timeout : 0
Lost Message : No
Last Set : Never
Last Clear Rxd : Never
Last Clear Stats Rxd : Never
Last Backup Of Cached Messages
Last Successful Backup : Never
Last Status : N/A
Last Filename : N/A
Last Restore Of Cached Messages
Last Successful Restore : Never
Last Status : N/A
Last Filename : N/A
Current Value Peak Value
------------- --------------
Incoming Data Msg (1 sec sample) (msgs/s) 9993 10208
Incoming Data Msg (60 sec sample) (msgs/s) 9999 9999
Incoming Data Byte (1 sec sample) (bytes/s) 749475 765600
Incoming Data Byte (60 sec sample) (bytes/s) 749978 749982
Outgoing Data Msg (1 sec sample) (msgs/s) 10 500
Outgoing Data Msg (60 sec sample) (msgs/s) 2 58
Cache Request (1 sec sample) (msgs/s) 1 1
Cache Request (60 sec sample) (msgs/s) 0 0
Cache Request Queue Depth 0 1
Cached Topics 10 50
Local Cached Topics 10 50
Global Cached Topics n/a n/a
Messages Cached 10 611
Local Cached Messages 10 611
Global Cached Messages n/a n/a
Message Bytes Cached 750 45825
Messages Cached (cumulative) 77081139
Message Bytes Cached (cumulative) 1486118129
Message Lost Indications Rxd 0
Messages Discarded (since last lost clear) 0
Parse Error (lost message) 0
Too Big Error (lost message) 0
Max Topics (lost message) 0
Max Memory (lost message) 0
Cluster Sync Fail (lost message) 0
Cluster Sync Suspect (lost message) 0
P2P Topic Filter 0
- As shown by the above example, status requests display cache request and response time-out statistics.
- When a messaging API sends a cache request, it indicates the amount of time it is willing to wait for a response. When the PubSub+ Cache Instance receives the cache request, it timestamps it and inserts it into the request queue. When the PubSub+ Cache Instance eventually extracts the cache request from the request queue, it checks to see how long the request has been in the queue. If this time exceeds the time that the API is willing to wait for a response, then the request is discarded and the Cache Requests Rxd time-out statistic is incremented.
- When a cache request is too large to handle in one cache response, the PubSub+ Cache Instance responds with the “more” flag set. If the API does not send a ‘get-next cache-request’ within the allotted session time-out (the default is 10 seconds), the cache request session is canceled, and the Cache Responses Txd time-out statistic is incremented.
solace> show cache-instance eq-cluster1-instance1 remote topics
Cache Instance : eq-cluster1-instance1
Cache Cluster : eq-cluster1
Distributed Cache : equities
Message VPN : default
Current Cumulative Current Cumulative Last
Topic Msg Count Msg Count Byte Count Byte Count Arrival
---------------- ---------- ---------- ---------- ---------- ---------------
md/nyse/bac 1 2000 1026 2052000 Feb 26 2012 06: 24:18
md/nyse/c 1 1000 1024 1024000 Feb 26 2012 06: 24:18
md/nyse/ge 1 1000 1025 1025000 Feb 26 2012 18: 22:12
md/nyse/pfe 1 1000 1026 1026000 Feb 26 2012 06: 24:1
---------------- ---------- ---------- ---------- ---------- ---------------
Total 4 5000 4101 5127000
If you are using Global Caching, you can enter the following User EXEC command to display the status of the home Cache Clusters that a PubSub+ Cache Instance can request global topics from.
solace> show cache-instance v1.dc21.Local1.instance4 remote home-cache-clusters
Cache Instance : v1.dc21.Local1.instance4
Cache Cluster : v1.dc21.Local1
Distributed Cache : v1.dc21
Message VPN : v1
Global Heartbeats Txd : 21010
Home Cache Cluster : v1.dc11.Home1
Heartbeat Status : Connected
Heartbeats Received : 20310
Last Heartbeat Timeout : Never
Cache Requests Rxd : 552901
Cache Requests Forwarded : 250900
OK : 250900
Fail : 0
No Match : 0
Timeout : 0
PubSub+ Cache Instance States
This section provides information on possible administrative and operational states that a PubSub+ Cache Instance could be in. These states can be viewed through many show cache-instanceUser EXEC commands (see Show Cache Instance).
- PubSub+ Cache Instance Administrative State
- PubSub+ Cache Instance Operational State
- Lost Message State
PubSub+ Cache Instance Administrative State
The table below lists the administrative states that can appear for a PubSub+ Cache Instance that has established communications with the Designated Router. These states are displayed in the show cache-instance User EXEC command output.
| Administrative State | Description |
|---|---|
|
down |
The PubSub+ Cache Instance is running, is connected to the message bus, and can communicate with the Cache Manager on the Designated Router. However, all of its topic subscriptions are removed from the network. Thus, a PubSub+ Cache Instance in the down state neither receives nor caches any messages, and it neither receives nor responds to cache requests. A PubSub+ Cache Instance can enter the down state when the shutdown command is issued for it or its parent Cache Cluster or Distributed Cache. |
|
stopped |
The PubSub+ Cache Instance is connected to the message bus, and it can receive and cache messages, but it cannot receive nor respond to cache requests. The typical cause for a stopped state is that the PubSub+ Cache Instance is not configured for auto-start, and after the PubSub+ Cache Instance is enabled, it enters this state. Thus, it is awaiting for an admin start command (see Performing PubSub+ Cache Administrative Tasks). A PubSub+ Cache Instance can also enter this state if cluster synchronization fails or if the PubSub+ Cache Instance is configured for ‘stop-on-lost-message’ and a ‘lost-message’ event occurs. |
PubSub+ Cache Instance Operational State
The table below lists the potential operational states that can appear for a PubSub+ Cache Instance that has established communications with the Designated Router. These states are displayed in the show cache-instance User EXEC command output.
| Operational State | Description |
|---|---|
|
registered |
The PubSub+ Cache Instance has successfully registered and authenticated with the Designated Router. If a PubSub+ Cache Instance fails to register, an event log is generated. |
|
config-sync |
The PubSub+ Cache Instance is synchronizing its configuration with the Designated Router. A config-sync state can occur when the configuration is pending confirmation from the PubSub+ Cache Instance back to the Designated Router. |
|
cluster-sync |
The PubSub+ Cache Instance is fetching cached messages from or providing cached messages to another PubSub+ Cache Instance in the Cache Cluster. |
|
up |
The PubSub+ Cache Instance is caching messages that match configured topic subscriptions and is ready to respond to cache requests. |
|
unknown |
The PubSub+ Cache Instance has not been heard from. |
|
invalid |
A mismatched configuration exists between the Designated Router and one or more of the PubSub+ Cache Instances attempting to register with it. |
Lost Message State
A PubSub+ Cache Instance can enter a Lost Message state, which indicates in the Cache Request Responses that the data integrity may be suspect. A PubSub+ Cache Instance can enter a Lost Message state under any of the following conditions:
- The event broker indicates that messages were lost in transit through the message bus.
- Local discards on ingress messages to PubSub+ Cache service occurred. This could occur, for example, due to exceeding memory or topic limitations, invalid format, or size.
- The PubSub+ Cache Instance disconnected from the message bus and subsequent reconnects occurred without a clean Cache Cluster synchronization.
- A custom Ingress Message Plug-in failure occurred. For information on the Ingress Message Plug-in, see Ingress Message Plug-Ins.
Failure to add topic subscriptions to the message bus is not considered an indication of lost messages. In such a case, an event log is generated.
On entering a Lost Message state, an event message is generated to indicate back to the Designated Router that a message has been lost. To avoid high volumes of lost message events while in this state, no further lost message events are sent back to the Designated Router. (One side effect of this is that subsequent discard notifications are masked.)
To clear the Lost Message state, an administrative clear-event action must be performed for the Distributed Cache. (See Performing PubSub+ Cache Administrative Tasks.)
Administrative actions do not mark the PubSub+ Cache Instance as having lost messages. Therefore the following actions do not affect the Lost Message state:
- Deletion of messages through the use of either a scheduled-delete-message Distributed Cache CONFIG command (see Scheduling Message Deletion) or an administrative delete-messages Distributed Cache Admin EXEC command (see Performing PubSub+ Cache Administrative Tasks).
- Shutdown, then later re-enable the Distributed Cache or PubSub+ Cache Instances.
- Topic subscription churn.
- Startup of a new PubSub+ Cache Instance process. (The new PubSub+ Cache Instance still synchronizes with the existing PubSub+ Cache Instances, since the Lost Message state does not survive across process termination.)
Clearing PubSub+ Cache Instance Statistics
To clear the statistics for one or more PubSub+ Cache Instances under a Distributed Cache, enter the following Privileged EXEC command:
solace# clear cache-instance <name> [cache-cluster <cluster-name>] [distributed-cache <cache-name>] [message-vpn <vpn-name>] stats
Where:
<name> is the PubSub+ Cache Instance name
<cluster-name> is the name of the Cache Cluster that the PubSub+ Cache Instance belongs to
<cache-name> is the name of the Distributed Cache that the PubSub+ Cache Instance belongs to
<vpn-name> is the name of the Message VPN that the PubSub+ Cache Instance belongs to