本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
直接查询 Amazon CloudWatch Logs OpenSearch 服务中的数据
本节将引导您完成在 Amazon Ser OpenSearch vice 中创建和配置数据源集成的过程,使您能够高效地查询和分析存储在 CloudWatch 日志中的数据。
在接下来的页面中,您将学习如何设置 CloudWatch Logs 直接查询数据源、浏览必要的先决条件,以及如何使用分步操作步骤。 AWS 管理控制台
主题
定价
亚马逊 OpenSearch 服务为 CloudWatch 日志直接查询提供 OpenSearch 计算单位 (OCU) 定价。当你运行直接查询时,你会产生每小时 OCU 的费用,在账单上列为 DirectQuery OCU 使用类型。您还将单独收取 Amazon L CloudWatch ogs 费用。
直接查询分为两种类型:交互式查询和索引视图查询。
-
交互式查询用于填充数据选择器并对 CloudWatch 日志中的数据进行分析。 OpenSearch Service 使用单独的预热任务处理每个查询,而无需维护延长的会话。
-
索引视图查询使用计算来维护服务中的索引视图。 OpenSearch 此类查询通常耗时更长,因为其将不同数量的数据量摄取到指定索引中。对于与 CloudWatch Logs 连接的数据源,索引数据存储在 OpenSearch 无服务器集合中,您需要按索引数据 (IndexingOCU)、搜索的数据 (SearchOCU) 和以 GB 为单位存储的数据付费。
有关更多信息,请参阅 Amazon OpenSearch 服务定价
限制
以下限制适用于 CloudWatch 日志中的直接查询:
-
与 CloudWatch 日志的直接查询集成仅在 OpenSearch 服务集合和 OpenSearch 用户界面上可用。
-
OpenSearch 无服务器集合的网络有效载荷限制为 100 MiB。
-
CloudWatch 日志支持 VPC Flow CloudTrail,以及从控制台安装的 AWS WAF 仪表板集成。
-
AWS CloudFormation 尚不支持模板。
-
OpenSearch 与使用直接查询相比,SQ OpenSearch L 和 PPL 语句在使用 OpenSearch 索引时有不同的限制。直接查询支持诸如 JOIN、子查询和查找之类的高级命令,而 OpenSearch 索引上对这些命令的支持有限或根本不存在。有关更多信息,请参阅 支持的 SQL 和 PPL 命令。
建议
在 CloudWatch 日志中使用直接查询时,我们建议采取以下措施:
-
在单个查询中搜索多个日志组时,请使用相应的语法。有关更多信息,请参阅 多日志组函数。
-
使用 SQL 或 PPL 命令时,需将特定字段用反引号括起来才能成功查询。包含特殊字符(非字母和非数字)的字段需要使用反引号。例如,对
@message、Operation.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
配额
注意
如果您想使用 L CloudWatch ogs Insights 进行直接查询,请务必参考为使用 OpenSearch SQL 的 “ CloudWatch 日志见解” 用户提供的更多信息。
| 说明 | 值 | 软限制? | 注意 |
|---|---|---|---|
| Account-level 直接查询 API 的 TPS 限制 | 3 TPS | 是 | |
| 最大数据来源数 | 20 | 是 | 限制是按照 AWS 账户。 |
| 最大自动刷新索引或实体化视图数 | 30 | 是 | 限额按数据来源计算。 |
| 最大并发查询数 | 30 | 是 |
限制以每个数据源为单位,适用于处于待处理或运行状态的查询。 包括交互式查询(例如,像这样的数据检索命令 |
| 每次查询的最大并发 OCU 数 | 512 | 是 |
OpenSearch 计算单位 (OCU)。限制基于 15 个执行器和 1 个驱动程序,每个执行器配备 16 个 vCPU 和 32 GB 内存。表示并发处理能力。 |
| 最大查询执行时间,以分钟为单位 | 60 | 否 | 限制适用于 L CloudWatch ogs Insights 中的 OpenSearch PPL/SQL 查询。 |
| 清除过期查询 ID 的时间间隔 | 90 天 | 是 | 这是 OpenSearch 服务清除较旧条目的查询元数据的时间段。例如,对于超过 90 天的查询,调用 GetDirectQuery 或 GetDirectQueryResult 失败。 |
支持 AWS 区域
CloudWatch 日志中的直接查询支持以下内容 AWS 区域 :
-
亚太地区(孟买)
-
亚太地区(香港)
-
亚太地区(大阪)
-
亚太地区(首尔)
-
亚太地区(新加坡)
-
亚太地区(悉尼)
-
亚太地区(东京)
-
加拿大(中部)
-
欧洲地区(法兰克福)
-
欧洲地区(爱尔兰)
-
欧洲地区(斯德哥尔摩)
-
欧洲地区(米兰)
-
欧洲(西班牙)
-
美国东部(弗吉尼亚州北部)
-
美国东部(俄亥俄州)
-
美国西部(俄勒冈州)
-
美国西部(北加利福尼亚)
-
欧洲地区(巴黎)
-
欧洲地区(伦敦)
-
南美洲(圣保罗)