问题标签 [telegraf-inputs-plugin]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
vsphere - 我可以在电报中将 vsphere 度量作为标签和字段吗?
我需要对 vm、datastore、host、cluster 等标签进行计数。show tag values cardinality from with key="clustername" where dcname = '' 这个查询需要很多时间来处理,因为我们有大量数据。在想,如果这些指标是字段,问题就可以解决。我可以对他们使用计数。但我们也需要它们作为标签。有没有更好的解决方案?
json - 如何在 Telegraf 中过滤 JSON 响应
我正在尝试使用 Telegraf 的HTTP Input Plugin从 HTTP-Endpoints 摄取 JSON 指标数据,并使用Postgresql Output plugin将其写入 Postgresql 数据库。这按预期工作。
但是,一些 JSON 响应非常长。由于 PostgreSQL 输出插件为每个字段创建一个列,因此这些表变得非常长并且包含我不需要的信息。
对于那些无法在发送方更改数据的端点(例如:RabbitMQ 的 Premade API),有没有办法在 Telegraf 中过滤 JSON 响应?
例如:我有以下 JSON 响应:
我只对message_stats.publish_details.rate
. 我不想message_stats.publish
出现在我的数据库中。我怎样才能做到这一点?
influxdb - Telegraf,在开始时触发而不是间隔?
您好,我目前正在尝试将包含许多 csv 文件(约 3GB)的文件夹解析为 influxdb。在 influxdata博客上有人建议,这将是自从 telegraf 是用 go 编写以来最快的方式。所以:
我可以让一切正常工作,我可以解析所有 csv 并将它们写入 influxdb。问题是解析和写入文件需要很多时间(旧的 macbook ..我认为超过一个小时)并且当代理间隔小于写入数据所需的时间时,telegraf-agent 将再次开始在下一个间隔读取和写入所有文件。所以它永远不会完成,我的 ram 一遍又一遍地塞满了所有相同的解析数据。当我将间隔设置得非常高时,我必须在代理启动之前等待一个间隔。所以也不是一个选择。问题是:
电报可以像脚本一样触发吗?所以我只运行一次而不必等待一个间隔开始?
telegraf - 如何获取电报的可用输入和输出过滤器列表
有什么方法可以获取给定安装当前支持哪些输入和输出过滤器的列表?
prometheus - Prometheus - 使用 telegraf http_response 插件在 http 错误的情况下创建警报
我正在使用 Telegraf 和 Prometheus 来监控我的本地服务,例如 OpenHab 和我的 Grafana 实例。
http_response 插件可能会产生以下结果:
现在我想要一个警报,只要过去 30 分钟的 !200 status_code 计数高于 200 status_code 计数,它就会通知我。
我开始很简单:
这很好用,但问题是这不适用于我不是每 10 秒而是每 5 到 30 分钟监控一次的服务(因为我想减少某些 API 的负载)。
所以我想,让我们尝试另一种方式:
这看起来很有希望,但不幸的是,如果根本没有 200/302 响应,则将无法正常工作,在这种情况下会返回“无数据”。
所以我不过,让我们把它除以总量:
但是,这导致:
Error executing query: found duplicate series for the match group {instance="192.168.2.15:9126", job="telegraf-master-pi", method="GET", server="http://www.grafana.local/series"} on the right hand-side of the operation: [{host="master-pi", instance="192.168.2.15:9126", job="telegraf-master-pi", method="GET", result="success", result_type="success", server="http://www.grafana.local/series", status_code="502"}, {host="master-pi", instance="192.168.2.15:9126", job="telegraf-master-pi", method="GET", result="success", result_type="success", server="http://www.grafana.local/series", status_code="200"}];many-to-many matching not allowed: matching labels must be unique on one side
同样在尝试忽略时:
发生同样的错误。
每当 http 响应在过去 30 分钟内仅返回 5xx 错误时,是否有其他方法可以提醒我?
json - 解析 Telegraf 的 json inputs.http 插件
我有一个下面格式的 json 响应,我试图通过 Telegraf 的 input.http 插件解析它。
https://docs.influxdata.com/influxdb/v1.7/tools/api/#examples-2
如果标签/字段是 json 对象的键,我看到的所有文档都显示了如何解析 json。例如,https://github.com/influxdata/telegraf/tree/master/plugins/parsers/json。
如何解析一个 json 对象,其中标签/字段和值被分成单独的列表?
以下是到目前为止我的 Telegraf 配置文件的相关部分。
influxdb - 用于电报配置的时间戳环境变量或参数
我正在使用 Telegraf 的 inputs.http 插件,以便将数据从 API 导入到 influxdb。API 需要在 POST 请求的正文中使用时间过滤器,并使用该时间过滤器之间的数据进行响应。我想定期调用这个 API 并检索过去 10 秒左右的数据。所以我需要在 POST 请求的正文中包含当前时间戳。我可以将当前服务器时间戳以环境变量或命令行参数的形式传递给 telegraf.conf 吗?到目前为止,我尝试的是在 telegraf.conf 文件中使用环境变量,如下所示。那没起效。
然后我运行下面的命令
并收到 400 错误。如果我用它上面的线(无变量)替换主体线(包括变量),一切正常。
json - 在 telegraf.conf 中将 JSON 值解析为单独的字符串
我正在使用 telegraf inputs.tail 来解析我的应用程序日志文件。输入数据为 json 格式,如下所示:
问题 - 如何解析 key3 的值,以便我可以将 value3a 和 value3b 写入 influxDB 中的两个单独的标签/列?
telegraf.conf 片段:
2天来一直在为这个问题头疼。任何帮助将非常感激!提前致谢。
mosquitto - Telegraf 启动问题
我尝试设置mosquitto、telegraf和influxdb的工具链。这三个都使用apt安装在树莓派上。为了调试,我使用了 telegraf 的文件输出。
当 pi 启动时,此连接不起作用。如果从外部订阅,Mosquito 就可以工作。telegraf 收集系统和磁盘信息。但是 telegraf 不收集 mqtt 信息。
当我重新启动蚊子喜欢
连接正常。
当我重新启动蚊子喜欢
它再次不起作用。
有什么区别?
我刚刚升级到最新版本,但这并没有改变任何东西。
- 蚊子 1.5.7
- 电报 1.15.3
- 涌入数据库 1.8.2
mosquitto 的启动信息很好:
来自 telegraf 的引导消息报告连接到 mosquitto,尽管 influxdb 存在一些问题
相关部分 oc telegraf.conf 是
python - 如何解决电报中的此错误?
我有一个自定义 python 插件,用于将数据拉入 Telegraf。它按预期打印出线路协议输出。
在我的 Ubuntu 18.04 环境中,运行此插件时,我在日志中看到一行:
这就对了。我不知道如何获得实际的回溯。
如果我运行sudo -u telegraf /usr/bin/telegraf -config /etc/telegraf/telegraf.conf
,插件将按预期工作。它完全按照应有的方式轮询和加载数据。
当 telegraf 自行执行插件时,我不确定如何继续解决此错误。
我已经重新启动了电报服务。我已经验证了权限(并且我认为上面的执行表明它应该可以工作)。
基于收到的评论和答案的一些额外细节:
- 该插件位于整个结构由
telegraf:telegraf
. 该错误似乎并不表示它看不到正在执行的文件,而是当 Telegraf 执行插件时文件中的某些内容失败。 - 插件代码如下。
插件代码(/my_company/plugins-enabled/plugin-mysystem/poll_mysystem.py
):
文件的相关部分telegraf.conf
:
配置文件的代理部分
接下来我该怎么做?