

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# CloudWatch Logs Insights 語言查詢語法
<a name="CWL_QuerySyntax"></a>

 本節提供有關 Logs Insights QL 的詳細資訊。查詢語法支援不同的函式和運算，包含但不限於一般函式、算術和比較運算，以及正規表達式。

**重要**  
為了避免因執行大型查詢而產生過多費用，請記住下列最佳實務：  
為每個查詢僅選取必要的日誌群組。
一律為您的查詢指定最窄的可能時間範圍。
當您使用主控台執行查詢時，請先取消所有查詢，再關閉 CloudWatch Logs Insights 主控台頁面。否則，查詢會持續執行直到完成。
當您將 CloudWatch Logs Insights 小工具新增至儀表板時，請確定儀表板不會以高頻率重新整理，因為每次重新整理都會啟動新的查詢。

若要建立包含多個命令的查詢，請使用直立線符號字元 (**\|**) 分隔命令。

若要建立包含註解的查詢，請使用雜湊字元 (**\#**) 作為註解的開頭。

**注意**  
 CloudWatch Logs Insights 會自動探索不同日誌類型的欄位，並產生以 **@** 字元開頭的欄位。如需進一步了解這些自動產生的欄位，請參閱《*Amazon CloudWatch 使用者指南*》中的[支援的日誌和探索的欄位](https://docs.aws.amazon.com/en_us/AmazonCloudWatch/latest/logs/CWL_AnalyzeLogData-discoverable-fields.html)。

下表簡要描述每個命令。此資料表下面是每個命令的詳細說明，並附有範例。

**注意**  
標準日誌類別中的日誌群組支援所有 Logs Insights QL 查詢命令。不常存取日誌類別中的日誌群組支援所有 Logs Insights QL 查詢命令`pattern`，但 `diff`、 和 除外`unmask`。


|  |  | 
| --- |--- |
| **` anomaly`** | 使用機器學習識別日誌資料中的異常模式。 | 
| **` display`** |  在查詢結果中顯示一個或多個特定欄位。 | 
| **` fields`** |  在查詢結果中顯示特定欄位，並支援可用於修改欄位值和建立要在查詢中使用之新欄位的函數和操作。 | 
| **` filter`** |  篩選查詢以僅傳回符合一個或多個條件的日誌事件。 | 
| **` filterIndex`** |  強制查詢僅嘗試掃描在欄位索引中提到的欄位上編製索引的日誌群組，並同時包含該欄位索引的值。這透過嘗試僅掃描這些日誌群組中包含此欄位索引查詢中指定值的日誌事件來減少掃描的磁碟區。<br />不常存取日誌類別中的日誌群組不支援此命令。 | 
| **` pattern`** | 自動將您的日誌資料叢集化，以形成模式。模式是指日誌欄位之間反覆出現的共同文字結構。CloudWatch Logs Insights 可讓您分析日誌事件中找到的模式。如需詳細資訊，請參閱[模式分析](CWL_AnalyzeLogData_Patterns.md)。 | 
| **` diff`** | 將請求時段中找到的日誌事件與先前相同長度時段的日誌事件進行比較，以便您可以尋找趨勢並了解特定日誌事件是否為新的。 | 
| **` parse`** |  從日誌欄位擷取資料，建立一個您可在查詢中處理的擷取欄位。**`parse`** 支援使用萬用字元的 glob 模式和規則運算式。 | 
| **` sort`** | 以遞增 (`asc`) 或遞減 (`desc`) 方式顯示傳回的日誌事件。 | 
| **` SOURCE`** | 在查詢`SOURCE`中包含 是根據要在查詢中包含的日誌群組名稱字首、帳戶識別符和日誌群組類別來指定大量日誌群組的有用方法。只有在您在 中 AWS CLI 或以程式設計方式建立查詢時，才支援此命令，而不是在 CloudWatch 主控台中。 | 
| **` stats`** |  使用日誌欄位值計算彙總統計數字。 | 
| **` limit`** | 指定您希望查詢傳回的日誌事件數目上限。使用 **`sort`** 可傳回「前 20 個」或「最近 20 個」結果。 | 
| **` dedup`** |  根據您指定之欄位中的特定值移除重複的結果。 | 
| **` unmask`** |  顯示因為資料保護政策而遮罩某些內容的某個日誌事件的全部內容。如需有關日誌群組中資料保護的詳細資訊，請參閱 [使用遮罩功能協助保護敏感日誌資料](mask-sensitive-log-data.md)。 | 
|  **`[unnest](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CWL_QuerySyntax-Unnest.html)`**  |  扁平化做為輸入的清單，以針對清單中的每個元素產生具有單一記錄的多個記錄。 | 
| **` lookup`** | 透過比對欄位值，使用查詢資料表中的資料來豐富日誌事件。使用查詢資料表將參考資料，例如使用者詳細資訊、應用程式名稱或產品資訊新增至查詢結果。 | 
| **` join`** | 將來源日誌群組的日誌事件與另一個日誌群組的事件結合，或根據相符欄位查詢結果。使用聯結命令，使用金鑰關聯不同來源之間的相關日誌事件，例如相符的請求識別符或交易 IDs。 | 
| **` subqueries`** | 子查詢是巢狀 Logs Insights 查詢，可做為另一個查詢的輸入。子查詢可用來衍生後續命令使用的中繼結果集。 | 
| ** [其他操作和函數](CWL_QuerySyntax-operations-functions.md)** | CloudWatch Logs Insights 也支援許多比較、算術、日期時間、數值、字串、IP 地址以及一般函數和操作。 | 

以下各節提供有關 CloudWatch Logs Insights 查詢命令的詳細資訊。

**Topics**
+ [日誌類別中支援的 Logs Insights QL 命令](CWL_AnalyzeLogData_Classes.md)
+ [異常](CWL_QuerySyntax-Anomaly.md)
+ [**display**](CWL_QuerySyntax-Display.md)
+ [fields](CWL_QuerySyntax-Fields.md)
+ [篩選條件](CWL_QuerySyntax-Filter.md)
+ [filterIndex](CWL_QuerySyntax-FilterIndex.md)
+ [SOURCE](CWL_QuerySyntax-Source.md)
+ [pattern](CWL_QuerySyntax-Pattern.md)
+ [差異](CWL_QuerySyntax-Diff.md)
+ [parse](CWL_QuerySyntax-Parse.md)
+ [sort](CWL_QuerySyntax-Sort.md)
+ [統計資料](CWL_QuerySyntax-Stats.md)
+ [limit](CWL_QuerySyntax-Limit.md)
+ [dedup](CWL_QuerySyntax-Dedup.md)
+ [unmask](CWL_QuerySyntax-Unmask.md)
+ [解巢狀](CWL_QuerySyntax-Unnest.md)
+ [查詢](CWL_QuerySyntax-Lookup.md)
+ [join](CWL_QuerySyntax-Join.md)
+ [subqueries](CWL_QuerySyntax-Subqueries.md)
+ [布林值、比較、數值、日期時間和其他函數](CWL_QuerySyntax-operations-functions.md)
+ [包含特殊字元的欄位](CWL_QuerySyntax-Guidelines.md)
+ [在查詢中使用別名和註解](CWL_QuerySyntax-alias.md)