本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
直接查詢 OpenSearch Service 中的 Amazon CloudWatch Logs 資料
本節將逐步引導您在 Amazon OpenSearch Service 中建立和設定資料來源整合,讓您有效率地查詢和分析儲存在 CloudWatch Logs 中的資料。
在以下頁面中,您將了解如何設定 CloudWatch Logs 直接查詢資料來源、導覽必要的先決條件,以及使用 step-by-step程序 AWS 管理主控台。
主題
定價
Amazon OpenSearch Service 為 CloudWatch Logs 直接查詢提供 OpenSearch Compute Unit (OCU) 定價。當您執行直接查詢時,會產生每小時 OCUs的費用,在帳單上列為 DirectQuery OCU 用量類型。您也會產生與 Amazon CloudWatch Logs 不同的費用。
直接查詢有兩種類型:互動式和索引化檢視查詢。
-
互動式查詢用於填入資料選擇器,並在 CloudWatch Logs 中對您的資料進行分析。OpenSearch Service 使用單獨的預熱任務處理每個查詢,而無需維護延伸工作階段。
-
索引檢視查詢使用運算來維護 OpenSearch Service 中的索引檢視。這些查詢通常需要更長的時間,因為它們會將不同數量的資料擷取至具名索引。對於 CloudWatch Logs 連線的資料來源,索引資料會存放在 OpenSearch Serverless 集合中,其中會向您收取資料索引 (IndexingOCU)、資料搜尋 (SearchOCU) 和以 GB 形式存放的資料的費用。
如需詳細資訊,請參閱 Amazon OpenSearch Service 定價
限制
下列限制適用於 CloudWatch Logs 中的直接查詢:
-
與 CloudWatch Logs 的直接查詢整合僅適用於 OpenSearch Service 集合和 OpenSearch 使用者介面。
-
OpenSearch Serverless 集合的網路承載限制為 100 MiB。
-
CloudWatch Logs 支援從主控台安裝的 VPC Flow、CloudTrail 和 AWS WAF 儀表板整合。
-
AWS CloudFormation 尚不支援 範本。
-
相較於使用直接查詢,使用 OpenSearch 索引時OpenSearch SQL 和 OpenSearch PPL 陳述式有不同的限制。 OpenSearch 直接查詢支援 JOINs、子查詢和查詢等進階命令,而對 OpenSearch 索引上這些命令的支援有限或不存在。如需詳細資訊,請參閱支援的 SQL 和 PPL 命令。
建議
在 CloudWatch Logs 中使用直接查詢時,我們建議您執行下列動作:
-
在一個查詢中搜尋多個日誌群組時,請使用適當的語法。如需詳細資訊,請參閱多日誌群組函數。
-
使用 SQL 或 PPL 命令時,請將特定欄位括在反引號中,以成功查詢它們。具有特殊字元 (非字母和非數字) 的欄位需要反引號。例如,將
@messageOperation.Export,和 括在反引號Test::Field中。您不需要將純字母名稱的資料欄括在反引號中。具有簡單欄位的範例查詢:
SELECT SessionToken, Operation, StartTime FROM `LogGroup-A` LIMIT 1000;附加反引號的類似查詢:
SELECT `@SessionToken`, `@Operation`, `@StartTime` FROM `LogGroup-A` LIMIT 1000; -
對查詢使用限制,以確保您不會向後提取太多資料。
-
不支援包含相同但僅在 (例如
field1和FIELD1) 時不同欄位名稱的查詢。例如,不支援下列查詢:
Select AWSAccountId, AwsAccountId from LogGroup Select a.@LogStream, b.@logStream from Table A INNER Join Table B ona.id = b.id不過,由於兩個日誌群組中的欄位名稱 (@logStream) 相同,因此支援下列查詢:
Select a.@logStream, b.@logStream from Table A INNER Join Table B on a.id = b.id -
函數和表達式必須在欄位名稱上操作,並成為
FROM子句中指定日誌群組的SELECT陳述式的一部分。例如,不支援此查詢:
SELECT cos(10) FROM LogGroup支援此查詢:
SELECT cos(field1) FROM LogGroup
配額
注意
如果您想要使用 CloudWatch Logs Insights 執行直接查詢,請務必參考 使用 OpenSearch SQL 的 CloudWatch Logs Insights 使用者其他資訊。
| Description | Value | 軟性限制? | 備註 |
|---|---|---|---|
| 跨直接查詢 APIs 的帳戶層級 TPS 限制 | 3 TPS | 是 | |
| 資料來源數量上限 | 20 | 是 | 限制為 AWS 帳戶。 |
| 自動重新整理索引或具體化視觀表上限 | 30 | 是 | 限制是每個資料來源。 |
| 並行查詢上限 | 30 | 是 |
限制取決於資料來源,並適用於處於待定或執行狀態的查詢。 包括互動式查詢 (例如 等資料擷取命令 |
| 每個查詢的並行 OCU 上限 | 512 | 是 |
OpenSearch 運算單位 (OCU)。根據 15 個執行器和 1 個驅動程式的限制,每個都具有 16 個 vCPU 和 32 GB 記憶體。代表並行處理能力。 |
| 查詢執行時間上限,以分鐘為單位 | 60 | 否 | 限制適用於 CloudWatch Logs Insights 中的 OpenSearch PPL/SQL 查詢。 |
| 清除過時查詢 IDs 的期間 | 90 天 | 是 | 這是 OpenSearch Service 清除舊項目查詢中繼資料的期間。例如,對於超過 90 天的查詢,呼叫 GetDirectQuery 或 GetDirectQueryResult 失敗。 |
支援的 AWS 區域
CloudWatch Logs 中的直接查詢 AWS 區域 支援下列項目:
-
亞太地區 (孟買)
-
亞太地區 (香港)
-
亞太地區 (大阪)
-
亞太區域 (首爾)
-
亞太區域 (新加坡)
-
亞太地區 (雪梨)
-
亞太區域 (東京)
-
加拿大 (中部)
-
歐洲 (法蘭克福)
-
歐洲 (愛爾蘭)
-
歐洲 (斯德哥爾摩)
-
歐洲 (米蘭)
-
歐洲 (西班牙)
-
美國東部 (維吉尼亞北部)
-
美國東部 (俄亥俄)
-
美國西部 (奧勒岡)
-
美國西部 (加利佛尼亞北部)
-
Europe (Paris)
-
歐洲 (倫敦)
-
南美洲 (聖保羅)