当指标需要经由不同代理发往两个 InfluxDB 1.x 目标时,请声明两个输出实例:

[[outputs.influxdb]]
  alias = "primary_metrics"
  urls = ["https://metrics-a.example:8086"]
  database = "observations"
  http_proxy = "http://proxy-a.example:3128"

[[outputs.influxdb]]
  alias = "secondary_metrics"
  urls = ["https://metrics-b.example:8086"]
  database = "observations"
  http_proxy = "http://proxy-b.example:3128"

这是现有 Telegraf 配置中的一个输出片段。请提供实际端点,并保留每个目标所需的认证与 TLS 设置。当某个目标可公开访问且允许经由公共代理的路径时,HTTP 代理列表可为其 http_proxy 值提供候选;所选代理必须允许该目标主机和端口。

如果没有选择不同指标的过滤器,两个输出实例都会收到符合条件的指标流。这是有意向两个目标重复投递。

单个 outputs.influxdb 实例在 urls 中放多个条目另有含义。该插件将其记录为面向同一集群的备选地址,并在一个间隔内只写入其中一个 URL,而不会向每个 URL 都发送副本。

每个 http_proxy 都属于其所在的输出实例,是单一的代理覆盖,而不是可供轮换的列表。InfluxDB 目标仍然来自 urls。因此,独立的输出实例直接表达两个目标和两条路径;当所需指标流不同时,还可以添加输出过滤器。

相关文章