Pulsar 提供持久化、非持久化兩種主題. 給生產者、消費者提供了一個邏輯上的主題地址
管理主題常用命令
列出 topic
bin/pulsar-admin topics list public/default
查看topic提供服務的URL
bin/pulsar-admin topics lookup persistent://public/default/test
授權
bin/pulsar-admin topics grant-permission --actions produce,consume --role AppHmsAlert persistent://public/default/test
獲取權限
bin/pulsar-admin topics permissions persistent://public/default/test
取消權限
bin/pulsar-admin topics revoke-permission --role AppHmsAlert persistent://public/default/test
查看是否取消成功
刪除 topic
如果有生產消費者在訂閱,需要先卸載topic,然後在執行刪除操作才能成功刪除
bin/pulsar-admin topics delete persistent://public/default/hello
要不然後報如下錯誤
卸載完topic就可以正常刪除topic了
卸載 topic
bin/pulsar-admin topics unload persistent://public/default/hello
查看topic狀態
bin/pulsar-admin topics stats persistent://public/default/test
查看topic內部狀態
bin/pulsar-admin topics stats-internal persistent://public/default/test
查看消息詳情
bin/pulsar-admin topics peek-messages --count 50 --subscription my-subscription persistent://public/default/test
根據消息ID查看
Batch Message ID: 12:9:0 參數可以根據id去查
bin/pulsar-admin topics get-message-by-id persistent://public/default/test -l 12 -e 9
查看最後一條消息Id
bin/pulsar-admin topics last-message-id persistent://public/default/test
根據ledgerId和entryId 查看消息,積壓的消息可以到具體的內容
bin/pulsar-admin topics get-message-by-id persistent://public/default/test -l 55 -e 5
獲取訂閱
bin/pulsar-admin topics subscriptions persistent://public/default/test
取消訂閱
bin/pulsar-admin topics unsubscribe --subscription 2 persistent://public/default/test
再檢查下2的訂閱者已被取消
獲取bundle
bin/pulsar-admin topics bundle-range persistent://public/default/test
跳過消息(往最新方向拔)
沒有執行跳過消息命令前的消息情況
bin/pulsar-admin topics skip --count 10m --subscription consumer-test persistent://public/default/test
執行過上面跳過消息命令的情況
跳過所有消息(跳到最新位置)
$ bin/pulsar-admin topics clear-backlog --subscription consumer-test persistent://public/default/test
重置cursor(把時間回拔)
沒有執行重置消息命令前的消息情況
bin/pulsar-admin topics reset-cursor --subscription consumer-test --time 10m persistent://public/default/test
執行重置消息命令前的消息情況
管理未分區的主題
創建Topic
bin/pulsar-admin topics create persistent://public/default/all
查看topic已創建成功
刪除topic
bin/pulsar-admin topics delete persistent://public/default/hello
獲取資源列表
bin/pulsar-admin topics list public/default
統計Topic信息
bin/pulsar-admin topics stats persistent://public/default/test --get-precise-backlog
管理分區主題
創建Topic並分配分區
bin/pulsar-admin topics create-partitioned-topic persistent://public/default/payment --partitions 4
查看Topic分區數
bin/pulsar-admin topics get-partitioned-topic-metadata persistent://public/default/payment
更新Topic分區數
bin/pulsar-admin topics update-partitioned-topic persistent://public/default/payment --partitions 8
刪除Topic分區數
bin/pulsar-admin topics delete-partitioned-topic persistent://public/default/oreder
查看分區詳細信息
bin/pulsar-admin topics partitioned-stats persistent://public/default/payment --per-partition
查看topic詳細統計信息
bin/pulsar-admin topics stats-internal persistent://public/default/test