本文介紹如何排查資料插入MNS後資料丟失或查詢不到的原因。
- 如果在Message ServiceMNS控制台和代碼裡都查詢不到剛插入的資料,請按照以下步驟進行排查。
- 登入Message ServiceMNS控制台,找到目標隊列,在其右側操作列選擇。在編輯隊列參數面板,查看以下參數設定的值。
- 訊息可見度逾時時間:表示訊息隱藏狀態的期間,超過此參數設定的時間後如果訊息未被用戶端消費,則訊息恢複為可用狀態。
- 訊息儲存時間長度:表示訊息在本隊列中最長的儲存時間,超過此參數設定的時間後,不論訊息是否被取出,都將被刪除。
- 訊息定時時間:表示發送到本隊列的所有訊息預設將以此參數設定的時間被延後消費。
說明 如果發送訊息時,設定了參數DelaySeconds的值,則訊息定時時間以此參數的值為準;如果發送訊息時,未設定DelaySeconds的值,則訊息定時時間以控制台上設定的參數訊息定時時間的值為準。 - 在隊列列表頁面,查看可用訊息和定時中訊息列的數字,並計算出可用訊息總數和定時中訊息總數。
- 根據以上兩個步驟中擷取的參數值,判斷隊列的配置是否合理。
- 登入Message ServiceMNS控制台,找到目標隊列,在其右側操作列選擇。在編輯隊列參數面板,查看以下參數設定的值。
- 如果在Message ServiceMNS控制台可以查到剛插入的資料,但是在代碼裡查詢不到,請檢查代碼是否有錯誤或者請核實SDK版本是否為最新版本。