菜单
文档breadcrumb arrow Grafana Alloybreadcrumb arrow 参考breadcrumb arrow 组件breadcrumb arrow prometheusbreadcrumb arrow prometheus.exporter.elasticsearch
开源

prometheus.exporter.elasticsearch

prometheus.exporter.elasticsearch组件集成了elasticsearch_exporter,用于从ElasticSearch服务器收集指标。

注意

目前,Alloy只能从单个ElasticSearch服务器收集指标。然而,通过该服务器配置的导出器可以收集所有节点的指标。

我们强烈建议您为Alloy配置一个单独的用户,并且只授予它按照官方文档中所述的严格必要的安全权限。

使用方法

alloy
prometheus.exporter.elasticsearch "LABEL" {
    address = "ELASTICSEARCH_ADDRESS"
}

参数

您可以使用以下参数来配置导出器的行为。省略的字段将采用其默认值。

名称类型描述默认值必需
address字符串Elasticsearch节点的HTTP API地址。"https://127.0.0.1:9200"
timeout持续时间尝试从Elasticsearch获取统计信息的超时时间。"5s"
all布尔值导出集群中所有节点的统计信息。如果使用,此标志将覆盖标志node
node字符串需要公开指标节点的名称
索引布尔值导出集群中索引的统计数据。
indices_settings布尔值导出集群中所有索引设置的统计数据。
cluster_settings布尔值导出集群设置的统计数据。
shards布尔值导出集群中分片的统计数据(隐含索引)。
snapshots布尔值导出集群快照的统计数据。
clusterinfo_interval持续时间集群标签的集群信息更新间隔。"5m"
ca字符串包含用于Elasticsearch连接的受信任证书颁发机构的PEM文件的路径。
client_private_key字符串包含客户端认证时连接到Elasticsearch的私钥的PEM文件路径。
client_cert字符串包含用于连接到Elasticsearch的私钥的相应证书的PEM文件路径。
ssl_skip_verify布尔值连接到Elasticsearch时跳过SSL验证。
aliases布尔值包括信息别名指标。
data_stream布尔值导出数据流的统计数据。
slm布尔值导出SLM(快照生命周期管理)的统计数据。

以下块在prometheus.exporter.elasticsearch的定义内受支持

层次结构描述必需
basic_authbasic_auth配置端点的认证基本认证。

basic_auth块

名称类型描述默认值必需
password_file字符串包含基本认证密码的文件。
passwordsecret基本认证密码。
username字符串基本认证用户名。

passwordpassword_file 互斥,且在 basic_auth 块内只能提供一个。

导出字段

以下字段被导出,并可由其他组件引用。

名称类型描述
targetslist(map(string))可用于收集导出指标的目标。

例如,可以将 targets 传递给 discovery.relabel 组件以重写目标的标签集,或者传递给收集公开指标的 prometheus.scrape 组件。

导出的目标使用由 运行命令 指定的配置的 内存流量 地址。

组件健康

prometheus.exporter.elasticsearch 仅在提供无效配置时报告为不健康。在这些情况下,导出字段保留其最后的健康值。

调试信息

prometheus.exporter.elasticsearch 不公开任何特定于组件的调试信息。

调试指标

prometheus.exporter.elasticsearch 不公开任何特定于组件的调试指标。

示例

此示例使用 prometheus.scrape 组件 收集来自 prometheus.exporter.elasticsearch 的指标。

alloy
prometheus.exporter.elasticsearch "example" {
  address = "https://127.0.0.1:9200"
  basic_auth {
    username = USERNAME
    password = PASSWORD
  }
}

// Configure a prometheus.scrape component to collect Elasticsearch metrics.
prometheus.scrape "demo" {
  targets    = prometheus.exporter.elasticsearch.example.targets
  forward_to = [prometheus.remote_write.demo.receiver]
}

prometheus.remote_write "demo" {
  endpoint {
    url = PROMETHEUS_REMOTE_WRITE_URL

    basic_auth {
      username = USERNAME
      password = PASSWORD
    }
  }
}

替换以下内容

  • PROMETHEUS_REMOTE_WRITE_URL:将指标发送到兼容Prometheus remote_write的服务器URL。
  • USERNAME:用于远程_write API认证的用户名。
  • PASSWORD:用于远程_write API认证的密码。

兼容组件

prometheus.exporter.elasticsearch 的导出可以由以下组件消费

注意

连接某些组件可能不合理,或者组件可能需要进一步配置才能正确连接。有关更多详细信息,请参阅链接文档。