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

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

使用 Amazon OpenSearch Ingestion 从日志中派生指标

您可以使用 Amazon OpenSearch Ingestion 从日志中派生指标。以下示例管道使用 HTTP 源插件和 Grok 处理器接收传入日志。然后,使用聚合处理器提取在 30 秒时段内汇总的指标 bytes,并通过结果派生直方图。

整体管道包含两个子管道:

  • apache-log-pipeline-with-metrics – 通过 HTTP 客户端(例如,FluentBit)接收日志,通过匹配 log 密钥值与 Grok 通用 Apache 日志模式从日志中提取重要值,然后将 grok 日志转发到 log-to-metrics-pipeline 子管道和名为 logs 的 OpenSearch 索引。

  • log-to-metrics-pipeline – 接收来自 apache-log-pipeline-with-metrics 子管道的 grok 日志,聚合日志,然后根据 clientiprequest 密钥值派生 bytes 直方图指标。最后,将直方图指标发送到名为 histogram_metrics 的 OpenSearch 索引。

version: "2" apache-log-pipeline-with-metrics: source: http: # Provide the path for ingestion. ${pipelineName} will be replaced with pipeline name configured for this pipeline. # In this case it would be "/apache-log-pipeline-with-metrics/logs". This will be the FluentBit output URI value. path: "/${pipelineName}/logs" processor: - grok: match: log: [ "%{COMMONAPACHELOG_DATATYPED}" ] sink: - opensearch: ... index: "logs" - pipeline: name: "log-to-metrics-pipeline" log-to-metrics-pipeline: source: pipeline: name: "apache-log-pipeline-with-metrics" processor: - aggregate: # Specify the required identification keys identification_keys: ["clientip", "request"] action: histogram: # Specify the appropriate values for each of the following fields key: "bytes" record_minmax: true units: "bytes" buckets: [0, 25000000, 50000000, 75000000, 100000000] # Pick the required aggregation period group_duration: "30s" sink: - opensearch: ... index: "histogram_metrics"

除此示例之外,您也可以使用记录到指标管道蓝图。有关蓝图的更多信息,请参阅 使用蓝图创建管道