我想将不同的指标放入不同的存储桶中。在我的存储桶中Websites
,我想放入 HTTP 响应指标。
我的配置文件如下所示/etc/telegraf/telegraf.d/httpmetrics.conf
:
[[inputs.http_response]]
## List of urls to query.
urls = [
"https://example.com
]
## Set response_timeout (default 5 seconds)
response_timeout = "5s"
## HTTP Request Method
method = "GET"
## Whether to follow redirects from the server (defaults to false)
follow_redirects = true
## Interface to use when dialing an address
interface = "eth0"
[[outputs.influxdb_v2]]
urls = ["http://127.0.0.1:8086"]
token = "xxx"
organization = "my Company"
bucket = "websites"
timeout = "5s"
user_agent = "telegraf"
content_encoding = "gzip"
现在我的问题是我的指标出现在全部桶。我做错了什么?
答案1
通过这种配置,Telegraf 不知道应该避免将某些输入写入可用的输出,即默认情况下,所有输入都写入所有输出。
有多种方法可以拆分measurements
,buckets
其中一种方法是在中input
为测量设置一个唯一的名称,例如name_override = "httpcheck"
,然后声明output
仅考虑这样的测量namepass = ["httpcheck"]
。
您可以在以下网站了解更多信息InfluxDB 文档。
答案2
Telegraf 安装的最低配置至少是一个input
和一个output
插件。
为了使输入插件[[inputs.http_response]]
值最终进入正确的存储桶/数据库,输出插件需要知道将数据路由到哪里。
将以下行添加到我的输出插件后,它可以按预期工作。
namepass = ["http_response"]