日志 - 亚马逊 OpenSearch 服务
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

日志

OpenSearch 摄取可以在摄取期间将非结构化日志数据转换为结构化格式。 OpenSearch Ingestion 提供的处理器可在数据编制索引之前对其进行标准化和充实。有用的处理器的例子有:

  • grok— 将非结构化文本数据(例如 Web 服务器访问日志)解析为不同的字段,并将其结构化为不同的字段。

  • date— 解析日志字段中的日期并将其设置为事件的时间戳。

  • parse_json— 解析包含 JSON 对象的字符串字段。

注意 — 为了简化入门,我们在 Amazon S OpenSearch ervice 控制台中为日志创建了一个新的 “入门” 工作流程,该工作流程将设置一个新的 Otel 量身定制的摄取管道,将其指向现有 OpenSearch 集群,并创建具有可观察性工作空间的新 OpenSearch UI 应用程序。您所要做的就是将您的 Otel 代理指向新的摄取端点。

OpenSearch 用户界面和可观测性工作区

将日志数据导入亚马逊 OpenSearch 服务后,您可以使用 OpenSearch 用户界面中亚马逊 OpenSearch 服务可观测性工作区提供的工具对其进行分析。可观测性工作区提供了专门的工具,旨在在 Discover 和 Dashboards 中提取有意义的见解。

可观测性工作空间附带了全新 Discover 体验,该体验使用管道处理语言 (PPL),再加上由 Amazon Q Business 开发者提供支持的自然语言助手。语言辅助功能使任何人都可以轻松开始使用管道语言。优化查询后,无需跳转到工具的其他部分,即可直接从新的 Discover 创建可视化和仪表板。要使用 DQL 或 S QL 查询数据,请切换到旧的 Discover 体验。

使用 PPL 查询您的日志

您可以通过多种方式查询日志,以收集有关应用程序或服务运行情况的见解。

管道处理语言 (PPL) 是一种查询语言,其语法基于管道 (|),用于链接命令。您可以使用它来构建强大的表达式来分析您的日志。

注意:要 commands/functions 在 OpenSearch 2.19 版本中解锁较新的 PPL,你需要使用以下查询在 “ OpenSearch 开发者工具” 中更改功能标志( OpenSearch 3.3 不需要):

PUT /_plugins/_query/settings { "transient" : { "plugins.calcite.enabled" : true } }

查找错误最多的主机

此示例分析您的日志,以确定错误总数最多的服务主机。

source = my-index | where level = "ERROR" | stats count() as error_count by host | sort -error_count | head 5

计算平均请求时间

此示例分析您的日志,以计算日志中每个状态代码的平均请求时间。

source = my-index | stats avg(request_time) by status_code

有关 PPL 的更多信息,请参阅 opensearch.org 上的 PPL 参考手册

使用 AI 查询您的日志

此示例分析您的日志,以显示过去 5 分钟内记录的错误。

Show me all of the error logs from the last 5 minutes

使用 SQL 查询您的日志

SQL 提供了一种熟悉的查询日志数据的方式。

此示例分析您的日志,以按时间戳显示错误。

SELECT timestamp, severity_text, body, service_name FROM opentelemetry_logs WHERE severity_text = 'ERROR' AND service_name = 'my-service' ORDER BY timestamp DESC;

有关 SQL 的更多信息,请参阅上的 SQL 参考手册 GitHub。

使用 DQL 查询您的日志

DQL 非常适合快速搜索和筛选。

此示例分析您的日志并返回错误和异常。

error OR exception

有关 DQL 的更多信息,请参阅 opensearch.org 上的 DQL 参考手册

仪表板和日志警报

在 PPL 的全新 Discover 体验中,你可以通过 Discover 中的 “可视化” 选项卡创建可视化效果。从 12 种可视化类型中进行选择,并在将其添加到仪表板之前进行即时编辑。在旧的 Discover 体验中,您将浏览到左侧导航栏中的 Visualize 以创建新的可视化效果,浏览到仪表板以将可视化效果添加到仪表板中。

您可以使用 PPL 或 OpenSearch 服务查询 DSL 定义警报监视器来运行预设查询。触发条件(例如特定数量的错误日志)会触发警报。您可以通过 Amazon 简单通知服务或 webhook 等渠道发送通知。

有关警报的更多信息,请参阅 opensearch.org 上的警报文档