查詢消息軌跡
消息軌跡是指一條消息從生產(chǎn)者發(fā)送到消息隊(duì)列服務(wù)端,再到消費(fèi)者消費(fèi)處理,整個(gè)過程中的各個(gè)相關(guān)節(jié)點(diǎn)的時(shí)間、狀態(tài)等數(shù)據(jù)匯聚而成的完整鏈路信息。本文介紹如何快速查詢消息軌跡。
前提條件
您的消息已從生產(chǎn)者發(fā)送。
操作步驟
在左側(cè)導(dǎo)航欄,選擇 中間件 > 消息隊(duì)列 > 消息軌跡。
單擊 創(chuàng)建查詢?nèi)蝿?wù),您可選擇以下查詢維度,然后按頁面提示輸入相應(yīng)信息。
按 Message ID 查詢:該方式屬于精確查詢,速度快,精確匹配,推薦使用。
按 Message Key 查詢:該方式屬于模糊查詢,最多查詢 64 條消息軌跡。僅適用于您沒有記錄 Message ID 但是設(shè)置了 Message Key,同時(shí) Message Key 具有區(qū)分度的情況。
按 Topic 查詢:該方式屬于范圍查詢,適用于沒有上述 Message ID 和 Message Key,而且消息量比較小的場景。因?yàn)闀r(shí)間范圍內(nèi)消息很多,且不具備區(qū)分度。
單擊 確定。
創(chuàng)建完成后,即可在消息軌跡頁面查看到剛創(chuàng)建的查詢?nèi)蝿?wù),且任務(wù)狀態(tài)顯示查詢中,說明暫不能查看消息軌跡。
在消息軌跡頁面,單擊 刷新,直到狀態(tài)切換至查詢完成。單擊展開圖標(biāo)可查看到軌跡的簡要信息,包括消息本身的屬性以及接收狀態(tài)的信息。
單擊 查看軌跡 即可查看完整的鏈路圖,如下圖所示。
該軌跡圖提供了以下角色及相關(guān)信息:
生產(chǎn)者:
發(fā)送時(shí)間:消息從生產(chǎn)者發(fā)送時(shí)的客戶端時(shí)間戳。
發(fā)送耗時(shí):生產(chǎn)者調(diào)用 Send 方法發(fā)送消息的毫秒耗時(shí)。
發(fā)送狀態(tài):
發(fā)送成功:消息發(fā)送成功,服務(wù)端已經(jīng)存儲(chǔ)成功。
發(fā)送失敗:消息發(fā)送失敗,服務(wù)端沒有存儲(chǔ)消息,需要重試。
消息定時(shí)中:該消息是定時(shí)或者延時(shí)消息,且尚未到達(dá)投遞時(shí)間。
事務(wù)未提交:該消息是事務(wù)消息,且尚未提交狀態(tài)。
事務(wù)回滾:該消息是事務(wù)消息,并且已經(jīng)回滾。
Topic:
Key:消息的業(yè)務(wù)標(biāo)識(shí),由消息生產(chǎn)者設(shè)置,唯一標(biāo)識(shí)某個(gè)業(yè)務(wù)邏輯。
Tag:消息標(biāo)簽,二級(jí)消息類型,用來進(jìn)一步區(qū)分某個(gè) Topic 下的消息分類。
消費(fèi)者:
耗時(shí):消息推送到客戶端之后執(zhí)行 consumeMessage 方法的耗時(shí)。
投遞時(shí)間:客戶端執(zhí)行 consumeMessage 方法開始消費(fèi)消息時(shí)的時(shí)間戳。
消費(fèi)狀態(tài):
全部成功:該消息的所有投遞都已成功消費(fèi)。
部分成功:該消息投遞中存在消費(fèi)失敗的情況,或消費(fèi)失敗并重試成功的情況。
全部失敗:該消息的所有投遞都消費(fèi)失敗。
尚未消費(fèi):該消息尚未投遞給任何消費(fèi)方。
消費(fèi)結(jié)果未返回:消費(fèi)消息的方法尚未返回結(jié)果,或者被中斷,導(dǎo)致本次消費(fèi)結(jié)果未傳回服務(wù)端。
消費(fèi)成功:該消息已被成功消費(fèi)。
消費(fèi)失敗:消費(fèi)消息的方法主動(dòng)返回失敗標(biāo)志,或者是消費(fèi)方法拋異常。
如需刪除某個(gè)查詢?nèi)蝿?wù),可在消息軌跡任務(wù)列表頁找到目標(biāo)任務(wù),單擊其操作列的 刪除,按提示完成刪除。
單元化說明
在 LDC 單元化架構(gòu)環(huán)境下,您可以選定單元?jiǎng)?chuàng)建消息查詢?nèi)蝿?wù),如下圖所示。
查詢出的消息軌跡圖中,您也可以獲取到生產(chǎn)者、Topic 與消費(fèi)者所在的 Zone 信息,如下圖所示。