Monitoring Message Replay

Solace recommends that you monitor the replay log to ensure that it doesn't exceed 90% of its configured maximum spool usage quota. When message replay is configured correctly, the event broker automatically trims the oldest messages from the replay log to make room for new messages as they arrive.

While monitoring, if you find that your replay log consistently exceeds 90% of its configured maximum spool usage, this indicates that ingress traffic to the replay log occurs faster than the event broker can perform trimming. In this situation, Solace recommends that you investigate. For more information, see Impacts of Slow Trimming.

To resolve this issue, you may need to take one or more of the following actions:

If you notice that there are bursts of messages, Solace recommends that you characterize the burst pattern and then adjust the replay log size to absorb it and ensure adequate time for the event broker to perform trimming. Contact Solace if you require further assistance.

Applicable Show Commands

You can use the following Solace CLI show commands to monitor message replay.

Command Description

show replay-log

Shows the number of messages logged, the space consumed by those messages, the value set for max-spool-usage, and the ingress and egress states. For more information, see Monitoring the Replay Log Usage.

show queue <replay-queue-name> replay-state all

Shows all queues in a user-specified replay-state. See .

show queue <replay-queue-name> replay

Shows the replay state, last replayed message time, last replay start time, last replay complete time, last replay failure time, and last replay failure reason.

show queue <replay-queue-name> stats

Shows the number of replays initiated, replays succeeded, replays failed, messages replayed, and replayed messages ACKed.

show topic-endpoint <endpoint-name> replay-state<state>

Shows all topic endpoints in a user-specified replay state.

show topic-endpoint <endpoint-name> replay

Shows replay state, last replayed message time, last replay start time, last replay complete time, last replay failure time, and last replay failure reason.

show topic-endpoint <endpoint-name> stats

Shows the number of replays initiated, replays succeeded, replays failed, messages replayed, and replayed messages ACKed.

show message-spool stats

Shows the message-spool processing statistics and associated message replay processing statistics.

show message-spool message-vpn <message-vpn-name> stats

Shows the message-spool processing statistics for a specified Message VPN and associated message replay processing statistics.

For a detailed description of the above commands, see the CLI Command Reference.

Understanding the Message Replay Queues

When you configure a replay log on a Message VPN, two queues are created. The replay log queues created include:

  • #REPLAY_LOG_<replay-log-name>
    • Holds all the logged messages.

    • Messages in this queue are counted towards the Message VPN quota.

  • #REPLAY_TOPICS_<replay-log-name>
    • Holds the metadata about the logged messages (message ID, time spooled, topic string).

    • Its contents are counted towards the Message VPN quota.

If you create a replay log in Broker Manager, the <replay-log-name> is defaultLog. You choose the <replay-log-name> when you create the replay log using the Solace CLI.

You cannot configure these queues through the usual Solace CLI commands or Broker Manager settings associated with queue configuration.

Checking the Replay Status Using show replay-log

For the replay logs identified in the show replay-log command you can show:

  • the number of messages logged
  • the space consumed by those messages
  • the value set for max-spool-usage, and the ingress and egress states

For an example of using this command, see Monitoring the Replay Log Usage.

solace> show replay-log <name> [message-vpn <vpn-name>] [messages [oldest | newest] [msg-id <msg-id> | replication-group-msg-id <replication-group-msg-id> | priority <priority>] [detail] | topic-filters] [count <num-elements>]

Where:

  • <name>—The name of the message replay log.
  • <vpn-name>— The name of the Message VPN.
  • messages—Specifies to show information on the messages associated with the replay log.
  • oldest—Specifies to show the messages in the replay log in order from oldest to newest.
  • newest—Specifies to show messages in the replay log in order from newest to oldest.
  • msg-id <msg-id>—Specifies to show the messages in the replay log starting from the message identifier number specified by <msg-id>.
  • replication-group-msg-id <replication-group-msg-id>— Specifies to show the messages in the replay log starting from the replication group message ID specified by <replication-group-msg-id>.
  • priority <priority>—Specifies to show only the messages in the replay log with the priority specified by <priority>. Valid values are 0 through 9.
  • topic-filters—Specifies to show subscriptions associated with the replay log.
  • count <num-elements>—Specifies the number of display elements to show. Valid values are 1 through 4294967295.

Monitoring the Replay Log Usage

You can use PubSub+ Broker Manager or the Solace CLI to monitor the replay log usage against its configured quota for max-spool-usage.

To determine the usage for the replay log, you can either:

  • Log in to PubSub+ Broker Manager, and select Replay from the left navigation pane.

  • Run the show replay-log <replay-log-name> command in the Solace CLI. From the results, you use value of Log Usage(MB) and divide it by the Quota(MB) to calculate the percentage of the configured quota. For example, this would be 1773.21/2000 which equals 89% usage.

    solace(configure/message-spool/replay-log)# show replay-log my-first-log
    
    Flags Legend:
    I - Ingress Admin State (U=Up, D=Down)
    E - Egress  Admin State (U=Up, D=Down)
    F - Topic Filter State (E=Enabled, D=Disabled)
    
    Replay Log Name              Messages        Log            Status
    Message VPN                    Logged  Usage(MB)  Quota(MB) I E F
    ------------------------- ----------- ---------- ---------- ------
    My-first-replay-log
    default                           928    1773.21       2000 U D E