
Set Mgram Callback Filter

This command only takes effect after invoking setDebugCallback and will dynamically update
the filters used for the Mgram Trace for SonicMQ Debugging.

Example:

   sonic.mq.debug setMgramCallbackFilter ;;;action:print

   sonic.mq.debug setMgramCallbackFilter type:CONNECT;;;action:print

About the Filters:

filters ::= <filter>{#<filter>}
filter ::= [<conditions>];[<passcount>];[<firecount>];<actions>
conditions ::= <condition>{,<condition>}
condition ::= <type-condition> |
              <subtype-condition> |
              <appid-condition> |
              <subject-condition> |
              <successor-condition> |
              <caller-condition> |
              <inrecover-condition> |
              <uid-condition>

passcount ::= passcount:<integer> ; when conditions match denotes a countdown to firing the
                                    actions. Default is 0.
firecount ::= firecount:<integer> ; controls number of times actions can be fired
                                  ; Default is unlimited.
actions ::= <action>{,<action>}
action ::= print | printFully | capture | captureFully | captureWithTimestamp | captureFullyWithTimestamp | dumpStack
type-condition ::= type=<mgramType>{"|"<mgramType>}
mgramType ::=  TXN_FILE_EOF_MARKER |
               ERROR |
               PING |
               CONNECT |
               NORMAL |
               ACK |
               VERSION |
               IB_CONVERT |
               FLOW_CONTROL |
               DISCONNECT |
               TXN_REQUEST |
               EXTENDED_TXN_REQUEST |
               QUEUE_ACKFORWARD |
               QUEUE_NORMAL |
               QUEUE_GET |
               QUEUE_ACK |
               GR_CONVERT |
               GR_ROUTEINFO |
               BLOCK |
               RESUME |
               NACK" |
               FAILOVER_STATUS_NOTIFICATION |
               CONNECTION_SYNC |
               IDR |
               OPERATION |
               WINDOWED_TXN_ACK |
               ACK_LIST |
               STATE_EVENT |
               FT_CONVERT |
               DATABASE |
               REPLICATION_REQUEST_REPLY |
               BATCH |
               QUEUE_OPEN_REMOTE_RECEIVER |
               QUEUE_CLOSE_REMOTE_RECEIVER |
               REPLICATED_MGRAM |
               SPLIT_DELIVERY_ACK |
               PTP_FLOW_CONTROL |
               REPORT_FLOW_CONTROL

appid-condition ::= appid:<string> ; true when connection identifier contains a substring
                                   ; appid normally contains revealing connection identity
                                   ; particularly for ESB

subject-condition ::= subject:<string> ; true when subject identifier contains a substring
                                  ; subject usually has destination identifiers - queue and
                                  ; topic names

subtype-condition ::= type=<mgramSubType>{"|"<mgramSubType> }
mgramSubType ::=  ZERO |
                  CLIENT_HELLO_SUBTYPE |
                  BROKER_HELLO_SUBTYPE |
                  CLIENT_ID_SUBTYPE |
                  CHALLENGE_1_SUBTYPE |
                  CHALLENGE_2_SUBTYPE |
                  RESPONSE_SUBTYPE |
                  SUCCESS_SUBTYPE |
                  SEC_DISABLED_SUBTYPE |
                  BROKER_REDIRECTED_SUBTYPE

successor-condition ::= successor={true|false} ; indicates isSuccessor(redelivery) flag
                                               ; must match
inrecovery-condition ::= inrecovery={true|false} ; indicates progress.message.zclient.Connection
                                                 ; inRecoveryState must match condition.
                                                 ; NOT TO BE USED FOR BROKER FILTERS

caller-condition ::= caller={ClientListener|ClientSender|AgentListener|AgentServer}
                                                 ; permits you to home the filter to specific
                                                 ; places
uid-condition ::= uid=<string> ; where the Mgram security has been established
                               ; permits match on user identifier