367
魔獸
消息軌跡查詢__消息管理相關接口_Open API_消息隊列 MQ-阿裏雲
本文檔介紹 OnsMessageTrack 接口,該接口用於判斷目標 MsgId 對應的消息是否已經消費過。
1. 使用場景
MessageTrack 接口一般用於判斷指定的消息是否曾經被消費過,查詢條件為單條消息的 MsgId。需要注意的是 MessagTrack 的實現基於 MQ 的內部位點機製,在大部分場景下判斷結果可信,但如果應用方進行過重置位點已經清除消息等操作,則判斷結果可能有誤。
2. 請求參數列表
名稱 | 類型 | 是否必須 | 描述 |
---|---|---|---|
OnsRegionId | String | 是 | 當前查詢 MQ 所在區域,可以通過 OnsRegionList 方法獲取 |
OnsPlatform | String | 否 | 該請求來源,默認是從 POP 平台 |
PreventCache | Long | 是 | 用於 CSRF 校驗,設置為係統當前時間即可 |
Topic | String | 是 | 消息的 Topic |
MsgId | String | 是 | 消息 ID |
3. 返回參數列表
名稱 | 類型 | 描述 |
---|---|---|
RequestId | String | 為公共參數,每個請求獨一無二 |
HelpUrl | String | 幫助鏈接 |
Data | List(MessageTrack) | 查詢結果 |
MessageTrack 數據結構
名稱 | 類型 | 描述 |
---|---|---|
ConsumerGroup | String | 消費集群名稱 |
TrackType | String | 當前狀態 |
ExceptionDesc | String | 異常描述 |
4. 相關 API
- OnsMessageGetByMsgId:根據 MsgId 精確查詢消息
5. 使用示例
調用示例
public static void main(String []args) {
String regionId = "cn-hangzhou";
String accessKey = "XXXXXXXXXXXXXXXXX";
String secretKey = "XXXXXXXXXXXXXXXXX";
String endPointName ="cn-hangzhou";
String productName ="Ons";
String domain ="ons.cn-hangzhou.aliyuncs.com";
/**
*根據自己需要訪問的區域選擇Region,並設置對應的接入點
*/
try {
DefaultProfile.addEndpoint(endPointName,regionId,productName,domain);
} catch (ClientException e) {
e.printStackTrace();
}
IClientProfile profile= DefaultProfile.getProfile(regionId,accessKey,secretKey);
IAcsClient iAcsClient= new DefaultAcsClient(profile);
OnsMessageTraceRequest request = new OnsMessageTraceRequest();
/**
*ONSRegionId是指你需要API訪問MQ哪個區域的資源.
*該值必須要根據OnsRegionList方法獲取的列表來選擇和配置,因為OnsRegionId是變動的,不能夠寫固定值
*/
request.setOnsRegionId("daily");
request.setPreventCache(System.currentTimeMillis());
request.setAcceptFormat(FormatType.JSON);
request.setTopic("MingduanTest");
request.setMsgId("0A91883700001F90000001BF4723CB3E");
try {
OnsMessageTraceResponse response=iAcsClient.getAcsResponse(request);
List<OnsMessageTraceResponse.MessageTrack> trackList =response.getData();
for (OnsMessageTraceResponse.MessageTrack track:trackList){
System.out.println(track.getConsumerGroup()+" "+track.getTrackType()+" "+track.getExceptionDesc());
}
} catch (ServerException e) {
e.printStackTrace();
} catch (ClientException e) {
e.printStackTrace();
}
}
最後更新:2016-11-23 16:04:04
上一篇:
查詢消費進度__消費管理相關接口_Open API_消息隊列 MQ-阿裏雲
下一篇:
根據 Key 查詢消息__消息管理相關接口_Open API_消息隊列 MQ-阿裏雲
ImageDetectionRequest__SDK·接口介紹_內容檢測API文檔_阿裏綠網-阿裏雲
使用Logtail采集日誌__logtail(Agent)_用戶指南_日誌服務-阿裏雲
LogHub-監控__Getting-Started_日誌服務-阿裏雲
將路由器接口狀態置為非激活__路由器接口相關接口_API參考_專有網絡 VPC-阿裏雲
刪除主機記錄對應的解析記錄__解析管理接口_API文檔_雲解析-阿裏雲
基礎架構__產品簡介_容器服務-阿裏雲
TextAntispamDetectionRequest__SDK·接口介紹_內容檢測API文檔_阿裏綠網-阿裏雲
查看鎖等待__鎖等待管理_性能管理_用戶指南(RDBMS)_數據管理-阿裏雲
阿裏雲八年蝶變,新一代布局,重裝上陣
多行數據操作__Java-SDK_SDK 參考_表格存儲-阿裏雲
相關內容
常見錯誤說明__附錄_大數據計算服務-阿裏雲
發送短信接口__API使用手冊_短信服務-阿裏雲
接口文檔__Android_安全組件教程_移動安全-阿裏雲
運營商錯誤碼(聯通)__常見問題_短信服務-阿裏雲
設置短信模板__使用手冊_短信服務-阿裏雲
OSS 權限問題及排查__常見錯誤及排除_最佳實踐_對象存儲 OSS-阿裏雲
消息通知__操作指南_批量計算-阿裏雲
設備端快速接入(MQTT)__快速開始_阿裏雲物聯網套件-阿裏雲
查詢API調用流量數據__API管理相關接口_API_API 網關-阿裏雲
使用STS訪問__JavaScript-SDK_SDK 參考_對象存儲 OSS-阿裏雲