調用CLI命令查詢日誌。該命令適用於擷取大量日誌資料的情境。
請求文法
aliyunlog log get_log_all --project=<value> --logstore=<value> --from_time=<value> --to_time=<value> [--topic=<value>] [--query=<value>] [--reverse=<value>] [--offset=<value>] [--access-id=<value>] [--access-key=<value>] [--sts-token=<value>] [--region-endpoint=<value>] [--client-name=<value>] [--jmes-filter=<value>] [--format-output=<value>] [--decode-output=<value>]
請求參數
該命令的必選和特有參數描述如下。
參數名稱 | 數實值型別 | 是否必選 | 樣本值 | 描述 |
--project | String | 是 | aliyun-test-project | Project名稱。 |
--logstore | String | 是 | logstore-a | Logstore名稱。 |
--from_time | String | 是 | 2021-05-28 15:33:00+8:00 | 開始時間,Unix時間戳記格式或者 |
--to_time | String | 是 | 2021-05-28 15:40:00+8:00 | 結束時間,Unix時間戳記格式或者 |
--topic | String | 否 | "" | 日誌主題。更多資訊,請參見日誌主題(Topic)。 |
--query | String | 否 |
| 說明 當query參數中有分析語句(SQL語句)時,line參數和offset參數需要設定為0,通過LIMIT文法翻頁。更多資訊,請參見分析結果分頁。 |
--reverse | Boolean | 否 | true | 是否按日誌時間戳記逆序返回日誌,精確到分鐘層級。
|
--offset | Integer | 否 | 0 | 指定從某一行開始讀取查詢結果。預設值為0。 |
關於該命令的全域參數,請參見全域參數。
樣本
請求樣本
使用預設帳號查詢請求狀態為POST的事件數目量。命令樣本如下:
aliyunlog log get_log_all --project="aliyun-test-project" --logstore="logstore-a" --from_time="2021-05-28 15:33:00+8:00" --to_time="2021-05-28 15:40:00+8:00" --query="request_method:POST|select status,COUNT(*) as pv group by status" --format-output=json
返回樣本
{ "data": [], "meta": { "aggQuery": "select status,COUNT(*) as pv group by status", "columnTypes": [ "long", "long" ], "count": 0, "cpuCores": 11, "cpuSec": 0.019, "elapsedMillisecond": 21, "hasSQL": true, "insertedSQL": "1,29, from \"logstore-a\" ", "isAccurate": true, "keys": [ "status", "pv" ], "limited": 100, "powerSql": false, "processedBytes": 0, "processedRows": 0, "progress": "Complete", "telementryType": "logging", "telemetryType": "logging", "terms": [ { "key": "", "term": "request_method\uff1apost" } ], "whereQuery": "request_method\uff1aPOST" } }
下載樣本
使用get_log_all將日誌下載至本地。命令樣本如下:
aliyunlog log get_log_all --project="aliyun-test-project" --logstore="logstore-a" --from_time="2022-12-29 15:54:31" --to_time="2022-12-29 16:09:31" --query="status:200|select request_method as method,COUNT(*) as pv group by method order by pv" --format-output=json >>download_data.txt
下載說明
該命令執行成功後,會在執行該命令的根目錄下產生一個download_data.txt檔案,您可以在該檔案下查看到日誌資訊。
{ "data": [], "meta": { "aggQuery": "select status,COUNT(*) as pv group by status", "columnTypes": [ "long", "long" ], "count": 0, "cpuSec": 0.019, "elapsedMillisecond": 0, "hasSQL": true, "insertedSQL": "1,29, from \"gs-api\" ", "isAccurate": true, "keys": [ "status", "pv" ], "limited": 100, "processedBytes": 0, "processedRows": 0, "progress": "Complete", "telementryType": "logging", "telemetryType": "logging", "terms": [ { "key": "", "term": "request_method\uff1apost" } ], "whereQuery": "request_method\uff1aPOST" } }
更多參考
命令 | 使用情境 |
使用JSON設定檔精確查詢日誌資料。 | |
查詢指定數量日誌資料。 |