全部產品
Search
文件中心

:查看日誌Log Service

更新時間:Jan 24, 2025

Message ServiceMNS支援將日誌推送到Log Service,本文為您介紹日誌成功推送後,如何通過日誌查詢特定資訊。以下介紹幾種常用情境的查詢,您可以通過組合多個關鍵字來實現更加複雜的查詢。

重要 Message ServiceMNS推送日誌到指定LogStore會延遲約3分鐘。

步驟一:輸入查詢和分析語句

  1. 登入Log Service控制台

  2. 在Project列表地區,單擊目標Project。

    image

  3. 在控制台左側,單擊日誌儲存,在日誌庫列表中單擊目標Logstore。

    image

  4. 輸入查詢語句或分析語句。

    • 查詢語句用於日誌資料的查看、簡單搜尋和過濾。使用者使用查詢語句,通過特定條件(例如時間範圍、請求類型、關鍵字等)篩選出感興趣的資料集。查詢語句可以單獨使用,文法說明請參見查詢文法

    • 分析語句用於對日誌資料進行過濾、轉換、統計、彙總等操作,例如統計一段時間內資料的平均值、擷取資料的同比和環比結果。分析語句必須配合查詢語句一起使用,格式為查詢語句|分析語句,文法說明請參見函數概覽

  5. 設定日誌資料的時間範圍。有以下三種設定方式,如果在分析語句中設定了時間範圍,則查詢分析結果以該時間範圍為準。

    重要

    執行查詢和分析語句後,預設只返回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())

查詢隊列訊息的訊息軌跡

  1. 登入Log Service控制台

  2. 在Project列表地區,單擊目標Project。

    image

  3. 在控制台左側,單擊日誌儲存,在日誌庫列表中單擊目標Logstore。

    image

  4. 輸入查詢語句,然後單擊最近15分鐘,設定查詢的時間範圍。

    本案例要查詢隊列訊息的訊息軌跡,即輸入隊列名稱和訊息ID,格式為$QueueName and $MessageId,例如log and EED287A265726135146E6A9CADC880FA

    查詢結果如下所示,記錄了某條訊息從發送到接收的過程。查看隊列訊息的訊息軌跡

查詢隊列訊息發送量

  1. 登入Log Service控制台

  2. 在Project列表地區,單擊目標Project。

    image

  3. 在控制台左側,單擊日誌儲存,在日誌庫列表中單擊目標Logstore。

    image

  4. 輸入查詢語句,然後單擊最近15分鐘,設定查詢的時間範圍。

    本案例要查詢隊列訊息發送量,即輸入隊列名稱和發送操作,查詢語句格式為$QueueName and (SendMessage or BatchSendMessage),例如log and (SendMessage or BatchSendMessage)

    查詢結果如下所示,當前查詢時段內,生產者向log隊列發送了3條隊列訊息。查看隊列訊息寫入量

查詢隊列訊息消費量

  1. 登入Log Service控制台

  2. 在Project列表地區,單擊目標Project。

    image

  3. 在控制台左側,單擊日誌儲存,在日誌庫列表中單擊目標Logstore。

    image

  4. 輸入查詢語句,然後單擊最近15分鐘,設定查詢的時間範圍。

    本案例要查詢隊列訊息消費量,即輸入隊列名稱和消費操作,查詢語句格式為$QueueName and (ReceiveMessage or BatchReceiveMessage),例如log and (ReceiveMessage or BatchReceiveMessage)

    查詢結果如下所示,當前查詢時段內,log隊列中有12條訊息被消費。查看隊列訊息消費量

查詢隊列訊息刪除量

  1. 登入Log Service控制台

  2. 在Project列表地區,單擊目標Project。

    image

  3. 在控制台左側,單擊日誌儲存,在日誌庫列表中單擊目標Logstore。

    image

  4. 輸入查詢語句,然後單擊最近15分鐘,設定查詢的時間範圍。

    本案例要查詢隊列訊息刪除量,即輸入隊列名稱和刪除操作,查詢語句格式為$QueueName and (DeleteMessage or BatchDeleteMessage),例如log and (DeleteMessage or BatchDeleteMessage)

    查詢結果如下所示,當前查詢時段內,61條log隊列訊息被刪除。查看隊列訊息刪除量

查詢主題訊息的訊息軌跡

  1. 登入Log Service控制台

  2. 在Project列表地區,單擊目標Project。

    image

  3. 在控制台左側,單擊日誌儲存,在日誌庫列表中單擊目標Logstore。

    image

  4. 輸入查詢語句,然後單擊最近15分鐘,設定查詢的時間範圍。

    本案例要查詢主題訊息的訊息軌跡,即輸入主題名稱和MessageId,查詢語句格式為$TopicName and $MessageId,例如logtest and 8798453B65727FC6433E6AB4F746D4CE

    查詢結果如下圖所示,記錄了某條訊息從發送到通知的過程。查看主題訊息的訊息軌跡

查詢主題訊息發布量

  1. 登入Log Service控制台

  2. 在Project列表地區,單擊目標Project。

    image

  3. 在控制台左側,單擊日誌儲存,在日誌庫列表中單擊目標Logstore。

    image

  4. 輸入查詢語句,然後單擊最近15分鐘,設定查詢的時間範圍。

    本案例要查詢主題訊息發布量,即輸入主題名稱和發佈動作,查詢語句格式為$TopicName and PublishMessage,例如logtest and PublishMessage

    查詢結果如下圖所示,當前查詢時段內,生產者向logtest主題發布了3條訊息。查看主題訊息發布量

查詢某個用戶端訊息處理量

  1. 登入Log Service控制台

  2. 在Project列表地區,單擊目標Project。

    image

  3. 在控制台左側,單擊日誌儲存,在日誌庫列表中單擊目標Logstore。

    image

  4. 輸入查詢語句,然後單擊最近15分鐘,設定查詢的時間範圍。

    本案例要查詢某個用戶端訊息處理量,即輸入用戶端IP地址,查詢語句格式為$ClientIP,例如10.10.10.0

    如果您要查詢某個用戶端的某類動作記錄,可使用多個關鍵字組合方式,例如$ClientIP and (SendMessage or BatchSendMessage)

    查詢結果如下圖所示,當前查詢時段內,該用戶端處理了66條訊息。查看某個用戶端訊息處理量