指标分析
2.4 版引入
随着 OpenSearch 2.4 的发布,您现在可以使用 Metrics 工具直接在 OpenSearch 中摄入和可视化存储的指标数据。这为您提供了跨日志、追踪和指标分析和关联数据的工具。
在此功能推出之前,您只能摄入和可视化来自受监控环境的日志和追踪数据。通过 Metrics 工具,您现在可以更精细地观察您的数字资产,更深入地了解基础设施的健康状况,并更好地指导您的根本原因分析。
Metrics 工具除了提供以下功能外,还提供联邦可视化能力:
- 包含 OpenTelemetry (OTel) 兼容指标索引和基于 OTel 信号的 OpenSearch 集群。有关 OTel 的概述,请参阅 OpenTelemetry 是什么?
- 包含连接到 Prometheus 服务器的 Prometheus 数据源的 OpenSearch 集群。
下图显示了从 Prometheus 检索指标并在可视化仪表板上显示它们的工作流程。
下图显示了一个可观测性仪表板,它使用 OTel 查询可视化了来自 OpenSearch 索引的指标数据。
配置 Prometheus 以将指标数据发送到 OpenSearch
您必须首先使用 SQL 插件创建从 Prometheus 到 OpenSearch 的连接。然后,您可以使用 _datasources
API 端点配置到 Prometheus 的连接。
以下示例显示了一个不带任何身份验证配置 Prometheus 数据源的请求:
POST _plugins/_query/_datasources
{
"name" : "my_prometheus",
"connector": "prometheus",
"properties" : {
"prometheus.uri" : "https://:9090"
}
}
以下示例显示了如何使用 AWS Signature Version 4 身份验证配置 Prometheus 数据源:
POST _plugins/_query/_datasources
{
"name" : "my_prometheus",
"connector": "prometheus",
"properties" : {
"prometheus.uri" : "https://:8080",
"prometheus.auth.type" : "awssigv4",
"prometheus.auth.region" : "us-east-1",
"prometheus.auth.access_key" : ""
"prometheus.auth.secret_key" : ""
}
}
配置连接后,您可以通过转到 Observability > Metrics 页面在 OpenSearch Dashboards 中查看 Prometheus 指标,如下图所示。
开发者资源
有关示例代码、文章、教程和 API 参考,请参阅以下开发者资源:
- 数据源设置,其中包含有关数据源 API 身份验证和授权的信息。
- Prometheus 连接器,其中包含配置信息。
- 可观测性简单模式,其中包含有关 OTel 模式和摄入管道的信息。
- OTel 指标源,其中包含有关 Data Prepper 指标管道和摄入的信息。
在 OpenSearch 演示环境中试用 OpenTelemetry Metrics
OpenSearch opentelemetry-demo
仓库提供了一个实用演示,说明如何通过 OpenTelemetry 从 OpenTelemetry Metrics 收集、处理和可视化指标数据,并在 OpenSearch Dashboards 中使用 Metrics 工具。
在 OpenSearch 中可视化 OTel 指标
要在 OpenSearch 中可视化 OTel 指标数据,请按照以下步骤操作:
- 安装
opentelemetry-demo
仓库。有关说明,请参阅快速入门。 - 收集 OTel 信号,包括指标信号。有关说明,请参阅 OTel 收集器指南。
- 配置 OTel 管道以发出指标信号。有关说明,请参阅 OTel 收集器管道指南。
YAML 配置文件示例
service:
extensions: [basicauth/client]
pipelines:
traces:
receivers: [otlp]
processors: [batch]
exporters: [otlp, debug, spanmetrics, otlp/traces, opensearch/traces]
metrics:
receivers: [otlp, spanmetrics]
processors: [filter/ottl, transform, batch]
exporters: [otlphttp/prometheus, otlp/metrics, debug]
logs:
receivers: [otlp]
processors: [batch]
exporters: [otlp/logs, opensearch/logs, debug]
- 配置 Data Prepper 管道以将收集到的指标信号发送到 OpenSearch 指标索引。
YAML 配置文件示例
otel-metrics-pipeline:
workers: 8
delay: 3000
source:
otel_metrics_source:
health_check_service: true
ssl: false
buffer:
bounded_blocking:
buffer_size: 1024 # max number of records the buffer accepts
batch_size: 1024 # max number of records the buffer drains after each read
processor:
- otel_metrics:
calculate_histogram_buckets: true
calculate_exponential_histogram_buckets: true
exponential_histogram_max_allowed_scale: 10
flatten_attributes: false
sink:
- opensearch:
hosts: ["https://opensearch-node1:9200"]
username: "admin"
password: "my_%New%_passW0rd!@#"
insecure: true
index_type: custom
template_file: "templates/ss4o_metrics.json"
index: ss4o_metrics-otel-%{yyyy.MM.dd}
bulk_size: 4
- 将指标数据摄入 OpenSearch。随着演示开始生成数据,指标信号将添加到支持 OpenTelemetry Metrics 模式格式的 OpenSearch 索引中。
- 在 Metrics 页面上,从 Data sources 下拉菜单中选择
Otel-Index
,并从 OTel index 下拉菜单中选择Simple Schema for Observability Index
。此时将显示一个可视化效果,如下图所示。
可视化远程集群中的指标
2.14 版本引入
您可以使用 Metrics 工具查看远程 OpenSearch 集群中的指标。选择右上角工具栏上的数据库图标,然后从 DATA SOURCES 下拉菜单中选择一个集群,如下图所示。您可以从本地集群切换到远程集群。
您还可以将来自其他源的指标可视化与本地指标可视化一起查看。从 DATA SOURCES 下拉菜单中,选择远程指标可视化,将其添加到仪表板上已显示的可视化组中。示例仪表板如下图所示。
要了解数据源的多集群支持,请参阅 启用 OpenSearch Dashboards 支持多个 OpenSearch 集群。
基于自定义指标创建可视化
您可以使用 OpenSearch 集群收集的指标数据(包括 Prometheus 指标和自定义指标)创建可视化。
要创建这些可视化,请按照以下步骤操作:
- 从 OpenSearch Dashboards 主菜单中,导航到 Observability > Metrics > Available Metrics。
- 选择要添加到可视化中的指标,然后选择 Save。
- 当系统提示选择 Custom operational dashboards/application(自定义操作仪表板/应用程序)时,选择列出的选项之一。您可以在 Metric Name(指标名称)字段中编辑预定义名称值。
- 选择 Save 保存您的可视化。示例可视化如下图所示。
为 Prometheus 指标定义 PPL 查询
您可以定义 管道处理语言 (PPL) 查询来与 Prometheus 收集的指标进行交互。以下是一个 Prometheus 指标的 PPL 查询示例:
source = my_prometheus.prometheus_http_requests_total | stats avg(@value) by span(@timestamp,15s), handler, code
基于 PPL 查询创建自定义可视化
要基于 PPL 查询创建自定义可视化,请按照以下步骤操作:
- 从 Logs 页面,选择 > Event Explorer。
- 在 Explorer 页面上,输入您的 PPL 查询并选择 Run。然后选择 Save。
- 当系统提示选择 Custom Operational Dashboards/Application(自定义操作仪表板/应用程序)时,选择列出的选项之一。您可以选择编辑 Metric Name(指标名称)字段中的预定义名称值,并选择将可视化保存为指标。
- 选择 Save 保存您的自定义可视化。
只有包含时间序列可视化和统计信息或 span 信息的查询才能保存为指标,如下图所示。