菜单
开源

发现nerve

discovery.nerve 用来发现存储在 Zookeeper 中的 airbnb/nerve 目标。

用法

alloy
discovery.nerve "LABEL" {
	servers = [SERVER_1, SERVER_2]
	paths   = [PATH_1, PATH_2]
}

参数

支持以下参数

名称类型描述默认值必需
servers列表(字符串)Zookeeper 服务器。
paths列表(字符串)查找目标的路径。
timeout持续时间使用的超时时间。"10s"

路径列表中的每个元素可以指向一个单一的服务,或者指向一个服务的树根。

discovery.nerve 组件不支持任何块,完全通过参数进行配置。

导出字段

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

名称类型描述
targets列表(映射)从 Nerve 的 API 中发现的目标集合。

以下元标签在目标上可用,并且可以被 discovery.relabel 组件使用

  • __meta_nerve_path: Zookeeper 中端点节点完整路径
  • __meta_nerve_endpoint_host: 端点主机
  • __meta_nerve_endpoint_port: 端点端口
  • __meta_nerve_endpoint_name: 端点名称

组件健康

discovery.nerve 只有在给出无效配置时才会报告为不健康。在这种情况下,导出字段保留其最后的健康值。

调试信息

discovery.nerve 不暴露任何组件特定的调试信息。

调试度量

discovery.nerve 不暴露任何组件特定的调试度量。

示例

alloy
discovery.nerve "example" {
	servers = ["localhost"]
	paths   = ["/monitoring"]
	timeout = "1m"
}
prometheus.scrape "demo" {
	targets    = discovery.nerve.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 远程_write 兼容服务器的 URL。
  • USERNAME:用于对远程_write API 进行身份验证的用户名。
  • PASSWORD:用于对远程_write API 进行身份验证的密码。

兼容组件

discovery.nerve 的导出可以被以下组件使用

注意

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