Message ServiceMNS支援將日誌推送到Log Service,本文為您介紹日誌成功推送後,如何通過日誌查詢特定資訊。以下介紹幾種常用情境的查詢,您可以通過組合多個關鍵字來實現更加複雜的查詢。
步驟一:輸入查詢和分析語句
在Project列表地區,單擊目標Project。
在控制台左側,單擊日誌儲存,在日誌庫列表中單擊目標Logstore。
輸入查詢語句或分析語句。
設定日誌資料的時間範圍。有以下三種設定方式,如果在分析語句中設定了時間範圍,則查詢分析結果以該時間範圍為準。
重要執行查詢和分析語句後,預設只返回100行。如果您希望返回更多資料,可使用LIMIT文法。更多資訊,請參見LIMIT子句。
在頁面頂端的下拉式清單中,選擇時間範圍例如最近15分鐘。
在分析語句中通過
__time__
欄位指定時間範圍(閉合區間),例如* | SELECT * FROM log WHERE __time__>1558013658 AND __time__< 1558013660
。在分析語句中指定時間時,使用from_unixtime函數或to_unixtime函數轉換時間格式。例如:
* | SELECT * FROM log WHERE from_unixtime(__time__) > from_unixtime(1664186624) AND from_unixtime(__time__) < now()
* | SELECT * FROM log WHERE __time__ > to_unixtime(date_parse('2022-10-19 15:46:05', '%Y-%m-%d %H:%i:%s')) AND __time__ < to_unixtime(now())
查詢隊列訊息的訊息軌跡
在Project列表地區,單擊目標Project。
在控制台左側,單擊日誌儲存,在日誌庫列表中單擊目標Logstore。
輸入查詢語句,然後單擊最近15分鐘,設定查詢的時間範圍。
本案例要查詢隊列訊息的訊息軌跡,即輸入隊列名稱和訊息ID,格式為$QueueName and $MessageId,例如log and EED287A265726135146E6A9CADC880FA。
查詢結果如下所示,記錄了某條訊息從發送到接收的過程。
查詢隊列訊息發送量
在Project列表地區,單擊目標Project。
在控制台左側,單擊日誌儲存,在日誌庫列表中單擊目標Logstore。
輸入查詢語句,然後單擊最近15分鐘,設定查詢的時間範圍。
本案例要查詢隊列訊息發送量,即輸入隊列名稱和發送操作,查詢語句格式為$QueueName and (SendMessage or BatchSendMessage),例如log and (SendMessage or BatchSendMessage)。
查詢結果如下所示,當前查詢時段內,生產者向log隊列發送了3條隊列訊息。
查詢隊列訊息消費量
在Project列表地區,單擊目標Project。
在控制台左側,單擊日誌儲存,在日誌庫列表中單擊目標Logstore。
輸入查詢語句,然後單擊最近15分鐘,設定查詢的時間範圍。
本案例要查詢隊列訊息消費量,即輸入隊列名稱和消費操作,查詢語句格式為$QueueName and (ReceiveMessage or BatchReceiveMessage),例如log and (ReceiveMessage or BatchReceiveMessage)。
查詢結果如下所示,當前查詢時段內,log隊列中有12條訊息被消費。
查詢隊列訊息刪除量
在Project列表地區,單擊目標Project。
在控制台左側,單擊日誌儲存,在日誌庫列表中單擊目標Logstore。
輸入查詢語句,然後單擊最近15分鐘,設定查詢的時間範圍。
本案例要查詢隊列訊息刪除量,即輸入隊列名稱和刪除操作,查詢語句格式為$QueueName and (DeleteMessage or BatchDeleteMessage),例如log and (DeleteMessage or BatchDeleteMessage)。
查詢結果如下所示,當前查詢時段內,61條log隊列訊息被刪除。
查詢主題訊息的訊息軌跡
在Project列表地區,單擊目標Project。
在控制台左側,單擊日誌儲存,在日誌庫列表中單擊目標Logstore。
輸入查詢語句,然後單擊最近15分鐘,設定查詢的時間範圍。
本案例要查詢主題訊息的訊息軌跡,即輸入主題名稱和MessageId,查詢語句格式為$TopicName and $MessageId,例如logtest and 8798453B65727FC6433E6AB4F746D4CE。
查詢結果如下圖所示,記錄了某條訊息從發送到通知的過程。
查詢主題訊息發布量
在Project列表地區,單擊目標Project。
在控制台左側,單擊日誌儲存,在日誌庫列表中單擊目標Logstore。
輸入查詢語句,然後單擊最近15分鐘,設定查詢的時間範圍。
本案例要查詢主題訊息發布量,即輸入主題名稱和發佈動作,查詢語句格式為$TopicName and PublishMessage,例如logtest and PublishMessage。
查詢結果如下圖所示,當前查詢時段內,生產者向logtest主題發布了3條訊息。
查詢某個用戶端訊息處理量
在Project列表地區,單擊目標Project。
在控制台左側,單擊日誌儲存,在日誌庫列表中單擊目標Logstore。
輸入查詢語句,然後單擊最近15分鐘,設定查詢的時間範圍。
本案例要查詢某個用戶端訊息處理量,即輸入用戶端IP地址,查詢語句格式為$ClientIP,例如10.10.10.0。
如果您要查詢某個用戶端的某類動作記錄,可使用多個關鍵字組合方式,例如$ClientIP and (SendMessage or BatchSendMessage)。
查詢結果如下圖所示,當前查詢時段內,該用戶端處理了66條訊息。