菜单
文档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"
}

参数

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

名称类型描述默认是否必需
addressstringElasticsearch 节点的 HTTP API 地址。"https://127.0.0.1:9200"
timeoutduration获取 Elasticsearch 统计信息的超时时间。"5s"
allbool导出集群中所有节点的统计信息。如果使用,此标志将覆盖 node 标志。
nodestring指标的暴露节点名称
indicesbool导出集群中索引的统计信息。
indices_settingsbool导出集群中所有索引的设置统计信息。
cluster_settingsbool导出集群设置的统计信息。
shardsbool导出集群中分片的统计信息(隐含 indices)。
snapshotsbool导出集群快照的统计信息。
clusterinfo_intervalduration集群标签的集群信息更新间隔。"5m"
castring包含 Elasticsearch 连接受信任证书颁发机构的 PEM 文件路径。
client_private_keystring包含客户端身份验证连接到Elasticsearch时使用私钥的PEM文件路径。
client_certstring包含对应私钥的证书PEM文件路径,用于连接到Elasticsearch。
ssl_skip_verifybool连接到Elasticsearch时跳过SSL验证。
aliasesbool包括信息别名度量的信息。
data_streambool导出数据流的统计数据。
slmbool导出SLM(快照生命周期管理)的统计数据。

以下块在prometheus.exporter.elasticsearch定义内部被支持。

层次结构描述是否必需
basic_authbasic_auth配置basic_auth以验证端点。

basic_auth块

名称类型描述默认是否必需
password_filestring包含基本认证密码的文件。
passwordsecret基本认证密码。
usernamestring基本认证用户名。

``password``和``password_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远程写兼容服务器的URL。
  • ``USERNAME``: 用于远程写API认证的用户名。
  • ``PASSWORD``: 用于远程写API认证的密码。

兼容组件

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

注意

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