全部產品
Search
文件中心

ApsaraMQ for RocketMQ:OnsMessagePageQueryByTopic - 查詢Topic內所有訊息

更新時間:Dec 21, 2025

分頁查詢指定時間段內指定Topic記憶體在的所有訊息。

介面說明

重要 阿里雲提供的 OpenAPI 屬於管控類 API,用於管理和查詢阿里雲服務的相關資源。僅推薦在管控鏈路整合,訊息收發的核心資料鏈路中嚴禁依賴 OpenAPI 實現,否則可能會導致鏈路產生風險。
  • 按 Topic 查詢訊息的方式屬於範圍查詢,查詢結果會通過分頁的方式展示給調用方,僅適用於沒有任何搜尋條件(Message ID 和 Message Key)的查詢情境。

  • 根據 Topic 查詢訊息應儘可能縮短查詢的時間區間,否則匹配的訊息過多,將無法定位問題。調用流程如下所示:

    1. 傳入 Topic、起止時間以及每頁的訊息數量,進行分頁查詢。如果有訊息,預設返回第一頁的訊息、總頁數和查詢任務 ID。

    2. 根據返回的結果中的查詢任務 ID,進行後續取訊息,取訊息時傳入查詢任務 ID 以及當前頁數。此時輸入的起止時間和每頁訊息數量不生效,預設以第一次查詢時輸入的參數值為準。

調試

您可以在OpenAPI Explorer中直接運行該介面,免去您計算簽名的困擾。運行成功後,OpenAPI Explorer可以自動產生SDK程式碼範例。

調試

授權資訊

下表是API對應的授權資訊,可以在RAM權限原則語句的Action元素中使用,用來給RAM使用者或RAM角色授予調用此API的許可權。具體說明如下:

  • 操作:是指具體的許可權點。

  • 存取層級:是指每個操作的存取層級,取值為寫入(Write)、讀取(Read)或列出(List)。

  • 資源類型:是指操作中支援授權的資源類型。具體說明如下:

    • 對於必選的資源類型,用前面加 * 表示。

    • 對於不支援資源級授權的操作,用全部資源表示。

  • 條件關鍵字:是指雲產品自身定義的條件關鍵字。

  • 關聯操作:是指成功執行操作所需要的其他許可權。操作者必須同時具備關聯操作的許可權,操作才能成功。

操作

存取層級

資源類型

條件關鍵字

關聯操作

mq:QueryMessage

get

Topic

acs:mq:{#regionId}:{#accountId}:{#TopicName}

Topic

acs:mq:{#regionId}:{#accountId}:{#InstanceId}%{#TopicName}

  • mq:OnsInstanceBaseInfo

請求參數

名稱

類型

必填

描述

樣本值

Topic

string

需查詢的訊息的 Topic 名稱。

test-mq_topic

BeginTime

integer

查詢範圍的起始時間戳記,單位:毫秒。 通過 TaskId 進行後續取訊息時,該參數設定的值不生效,預設以第一次查詢時輸入的起始時間為準。

1570723200000

EndTime

integer

查詢範圍的終止時間戳記,單位:毫秒。 通過 TaskId 進行後續取訊息時,該參數設定的值不生效,預設以第一次查詢時輸入的終止時間為準。

1570809600000

TaskId

string

查詢任務的 ID,首次查詢不需要輸入,後續取訊息必須傳入,根據前一次的返回結果取出該欄位。

0BC1310300002A9F000021E4D7A48346

CurrentPage

integer

當前取第幾頁訊息,從 1 開始遞增,最大值為 50,取訊息時不可超過最大頁數。

2

PageSize

integer

分頁查詢,每頁最多顯示的訊息數量,預設是 20,最小 5 條,最多 50 條。 通過 TaskId 進行後續取訊息時,該參數設定的值不生效,預設以第一次查詢時輸入的每頁訊息數量為準。

5

InstanceId

string

需查詢的訊息所對應的執行個體 ID。

MQ_INST_111111111111_DOxxxxxx

返回參數

名稱

類型

描述

樣本值

object

查詢結果。

RequestId

string

公用參數,每個請求的 ID 都是唯一的,可用於排查和定位問題。

5DC2A47E-2B31-4722-96C8-FA59C9*****

MsgFoundDo

object

查詢結果。

CurrentPage

integer

當前位於第幾頁。

1

MsgFoundList

object

OnsRestMessageDo

array<object>

當前頁的訊息集合,該類型與 OnsMessageGetByMsgId 的返回結果一致。

array<object>

StoreSize

integer

訊息大小。單位:KB。

406

ReconsumeTimes

integer

訊息重試消費的次數。

1

StoreTimestamp

integer

訊息被服務端儲存的時間戳記,單位:毫秒。

1570760999811

InstanceId

string

執行個體 ID。

MQ_INST_111111111111_DOxxxxxx

MsgId

string

訊息 ID,即 Message ID。

1E0578FE110F18B4AAC235C05F2*****

StoreHost

string

儲存該訊息的伺服器執行個體。

11.193.***.***:10911

Topic

string

訊息的 Topic。

test-mq_topic

PropertyList

object

MessageProperty

array<object>

訊息屬性列表。

object

Value

string

訊息屬性的取值。

TagA

Name

string

訊息屬性。取值說明如下:

  • TRACE_ON:是否有訊息軌跡。

  • KEYS:訊息的 Key 屬性。

  • TAGS:訊息的 Tag 屬性。

  • INSTANCE_ID:訊息所在的執行個體的 ID。

更多概念資訊,請參見名詞解釋

TAGS

BornTimestamp

integer

訊息產生的時間戳記,單位:毫秒。

1570760999721

BodyCRC

integer

訊息體 CRC 校正值。

914112295

BornHost

string

產生該訊息的用戶端執行個體。

42.120.***.***:59270

MaxPageCount

integer

查詢結果最大頁數。

400

TaskId

string

第一次建立查詢時,返回的查詢任務 ID,用於後續取訊息。

0BC1310300002A9F000021E4D7A48346

樣本

正常返回樣本

JSON格式

{
  "RequestId": "5DC2A47E-2B31-4722-96C8-FA59C9*****",
  "MsgFoundDo": {
    "CurrentPage": 1,
    "MsgFoundList": {
      "OnsRestMessageDo": [
        {
          "StoreSize": 406,
          "ReconsumeTimes": 1,
          "StoreTimestamp": 1570760999811,
          "InstanceId": "MQ_INST_111111111111_DOxxxxxx",
          "MsgId": "1E0578FE110F18B4AAC235C05F2*****",
          "StoreHost": "11.193.***.***:10911",
          "Topic": "test-mq_topic",
          "PropertyList": {
            "MessageProperty": [
              {
                "Value": "TagA",
                "Name": "TAGS"
              }
            ]
          },
          "BornTimestamp": 1570760999721,
          "BodyCRC": 914112295,
          "BornHost": "42.120.***.***:59270"
        }
      ]
    },
    "MaxPageCount": 400,
    "TaskId": "0BC1310300002A9F000021E4D7A48346"
  }
}

錯誤碼

訪問錯誤中心查看更多錯誤碼。

變更歷史

更多資訊,參考變更詳情