This repository has been archived by the owner on Aug 23, 2023. It is now read-only.
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add command topic `stats`, `internal-stats`, `partition-stats` * topic stats * ``` ➜ pulsarctl git:(topic-stats) ✗ ./pulsarctl topic stats -h USED FOR: This command is used for getting the stats for an existing topic and its connected producers and consumers. (All the rates are computed over a 1 minute window and are relative the last completed 1 minute period) REQUIRED PERMISSION: This command requires namespace admin permissions. EXAMPLES: #Get the non-partitioned topic <topic-name> stats pulsarctl topic stats <topic-name> #Get the partitioned topic <topic-name> stats pulsarctl topic stats --partition <topic-name> #Get the partitioned topic <topic-name> stats and per partition stats pulsarctl topic stats --partition --per-partition <topic-name> OUTPUT: #Get the non-partitioned topic stats { "msgRateIn": 0, "msgRateOut": 0, "msgThroughputIn": 0, "msgThroughputOut": 0, "averageMsgSize": 0, "storageSize": 0, "publishers": [], "subscriptions": {}, "replication": {}, "deduplicationStatus": "Disabled" } #Get the partitioned topic stats { "msgRateIn": 0, "msgRateOut": 0, "msgThroughputIn": 0, "msgThroughputOut": 0, "averageMsgSize": 0, "storageSize": 0, "publishers": [], "subscriptions": {}, "replication": {}, "deduplicationStatus": "", "metadata": { "partitions": 1 }, "partitions": {} } #Get the partitioned topic stats and per partition topic stats { "msgRateIn": 0, "msgRateOut": 0, "msgThroughputIn": 0, "msgThroughputOut": 0, "averageMsgSize": 0, "storageSize": 0, "publishers": [], "subscriptions": {}, "replication": {}, "deduplicationStatus": "", "metadata": { "partitions": 1 }, "partitions": { "<topic-name>": { "msgRateIn": 0, "msgRateOut": 0, "msgThroughputIn": 0, "msgThroughputOut": 0, "averageMsgSize": 0, "storageSize": 0, "publishers": [], "subscriptions": {}, "replication": {}, "deduplicationStatus": "" } } } #the topic name is not specified [✖] only one argument is allowed to be used as a name #the specified topic is not exist or the specified topic is a partitioned-topic and you don't specified --partition or the specified topic is a non-partitioned topic and you specified --partition code: 404 reason: Topic not found #the topic name is not in the format of <tenant>/<namespace>/<topic> or <topic> [✖] Invalid short topic name '<topic-name>', it should be in the format of <tenant>/<namespace>/<topic> or <topic> #the topic name is not in the format of <domain>://<tenant>/<namespace>/<topic> [✖] Invalid complete topic name '<topic-name>', it should be in the format of <domain>://<tenant>/<namespace>/<topic> #the topic name is not in the format of <tenant>/<namespace>/<topic> [✖] Invalid topic name '<topic-name>', it should be in the format of<tenant>/<namespace>/<topic> #the namespace name is not in the format of <tenant>/<namespace> [✖] The complete name of namespace is invalid. complete name : <namespace-complete-name> #the tenant name and(or) namespace name is empty [✖] Invalid tenant or namespace. [<tenant>/<namespace>] #the tenant name contains unsupported special chars. the alphanumeric (a-zA-Z0-9) and the special chars (-=:.%) is allowed [✖] Tenant name include unsupported special chars. tenant : [<namespace>] #the namespace name contains unsupported special chars. the alphanumeric (a-zA-Z0-9) and the special chars (-=:.%) is allowed [✖] Namespace name include unsupported special chars. namespace : [<namespace>] Usage: pulsarctl topics stats [flags] ``` * topic internal-stats * ``` ➜ pulsarctl-yong git:(topic-stats) ./pulsarctl topic internal-stats -h USED FOR: This command is used for getting the internal stats for an existing non-partitioned topic. REQUIRED PERMISSION: This command requires namespace admin permissions. EXAMPLES: #Get internal stats for an existing non-partitioned-topic <topic-name> pulsarctl topic internal-stats <topic-name> OUTPUT: #normal output { "entriesAddedCounter": 0, "numberOfEntries": 0, "totalSize": 0, "currentLedgerEntries": 0, "currentLedgerSize": 0, "lastLedgerCreatedTimestamp": "", "lastLedgerCreationFailureTimestamp": "", "waitingCursorsCount": 0, "pendingAddEntriesCount": 0, "lastConfirmedEntry": "", "state": "", "ledgers": [ { "ledgerId": 0, "entries": 0, "size": 0, "offloaded": false } ], "cursors": {} } #the topic name is not specified [✖] only one argument is allowed to be used as a name #the specified topic is not exist or the specified topic is a partitioned topic [✖] code: 404 reason: Topic not found #the topic name is not in the format of <tenant>/<namespace>/<topic> or <topic> [✖] Invalid short topic name '<topic-name>', it should be in the format of <tenant>/<namespace>/<topic> or <topic> #the topic name is not in the format of <domain>://<tenant>/<namespace>/<topic> [✖] Invalid complete topic name '<topic-name>', it should be in the format of <domain>://<tenant>/<namespace>/<topic> #the topic name is not in the format of <tenant>/<namespace>/<topic> [✖] Invalid topic name '<topic-name>', it should be in the format of<tenant>/<namespace>/<topic> #the namespace name is not in the format of <tenant>/<namespace> [✖] The complete name of namespace is invalid. complete name : <namespace-complete-name> #the tenant name and(or) namespace name is empty [✖] Invalid tenant or namespace. [<tenant>/<namespace>] #the tenant name contains unsupported special chars. the alphanumeric (a-zA-Z0-9) and the special chars (-=:.%) is allowed [✖] Tenant name include unsupported special chars. tenant : [<namespace>] #the namespace name contains unsupported special chars. the alphanumeric (a-zA-Z0-9) and the special chars (-=:.%) is allowed [✖] Namespace name include unsupported special chars. namespace : [<namespace>] Usage: pulsarctl topics internal-stats [flags] Aliases: internal-stats, ```
- Loading branch information