问题标签 [telegraf-plugins]

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.

0 投票
1 回答
3390 浏览

grep - Telegraf - inputs.procstat pgrep 插件问题

电报 v1.0.1

启用[[inputs.procstat]]插件后,我无法再看到telegraf[._](树)指标。

Telegraf 安装成功。进程正在运行。我几乎使用输入插件和输出插件的正常设置。

这就是我得到的:

为什么,当jenkins进程正在运行并pgrep -f jenkins返回有效结果时,日志文件显示错误。

PS: [[inputs.procstat]]插件pgrep -f <exe_value_pattern>用于它的逻辑,如果pattern =使用方法,pgrep <executable>如果exe =使用方法。

完整的/etc/telegraf/telegraf.d/telegraf-custom-host-services-processes.conf文件是:

0 投票
1 回答
4580 浏览

pattern-matching - Telegraf - inputs.procstat procstat 插件 - 使用命令行模式或用户名

使用:Telegraf v1.0.1或更高版本

Telegraf procstat 插件的文档: https ://github.com/influxdata/telegraf/tree/master/plugins/inputs/procstat

Documentation下,它说:

procstat 插件可用于监控单个进程使用其 /proc 数据的系统资源使用情况。

该插件将通过它们的 PID 和它们的进程名称来标记进程。

进程可以通过 pid 文件、可执行文件名、命令行模式匹配或用户名(按此顺序或优先级)指定。Procstat 插件将在提供可执行文件名来获取 pid 时使用 pgrep。

我的自定义配置文件:
/etc/telegraf/telegraf.d/my_custom_process_service-telegraf.conf包含:

上面的配置按照语法可以正常工作。

问题:

文档说明了使用exe, pid_file,但没有给出如何使用command line pattern matchingOR by的示例username。如果您知道如何使用它,我可以举一些例子吗?

0 投票
1 回答
284 浏览

wavefront - EnhanceIO Telegraf `filestat` 插件 - 超级 GLOB 模式不起作用 - 使 telegraf 递归查找所有文件

Telegraf v1.0.1 ( git: master 26acdc9231efde105510fe5df3da7519bc4f42f7 )

sudo service telegraf status显示Telegraf 服务运行成功telegraf is running [OK]

我正在使用 Wavefront 的基于 SaaS 的监控解决方案来显示 Telegraf 数据或设置各种其他东西(警报、仪表板)......它可以工作。

概述:安装 Telegraf 时,它会在/etc/telegraf/telegraf.conf中创建其主配置文件,用户可以将其他配置放在/etc/telegraf/telegraf.d /*.conf(文件)下。

我有/etc/telegraf/telegraf.d/extra-inputs-plugins.conf并且在这个文件中,我有以下内容(如您所见,它正在使用filestat inputs plugin)并且以下配置有效:

在一些数据库服务器上,我已经安装了EnhanceIO(更多信息请看这里:https ://github.com/stec-inc/EnhanceIO

安装 EnhanceIO 后,您将获得如下文件夹结构:

要配置 Telegraf 的filestat插件以捕获/查找/proc/enhanceio/data_cache/config文件,我可以添加它或/proc/enhanceio/data_cache/*在我的配置中添加(但这样做,解决方案将无法扩展,即如果我希望 telegraf 选择/proc文件夹下的所有文件怎么办。

插件文档/评论部分说:

因此,我尝试了以下配置来查找每个文件(递归):

以上在我运行时导致以下输出:($ telegraf --config-directory=/etc/telegraf -test|grep filestat|grep -v '/var/run/'|grep enhance实际上 /proc/enhanceio 是一个文件夹)。

然后,我尝试使用该**方法,但我什么也没得到

我尝试了几乎所有glob模式(例如:/proc/enhanceio/*/*、、或) /proc/enhanceio/*/**,但它只是没有捕获 /proc/enhanceio 树下的任何文件。/proc/enhanceio/**/*/proc/enhanceio/**/**

当我尝试上述模式时,为什么 filestat 插件的 SUPER GLOB 模式根本不起作用?

如何使 filestat 插件捕获 /proc 树下的所有文件?

PS/proc/enhanceio/data_cache/* :如果我想config在该目录下(仅在该级别)捕获文件,我知道给予将起作用。

0 投票
1 回答
3986 浏览

python-2.7 - telegraf - exec 插件 - aws ec2 ebs volumen info - 指标解析错误,原因:[缺少字段]或遇到错误:[无效数字]

机器- CentOS 7.2Ubuntu 14.04/16.xx

电报版本:1.0.1

Python版本:2.7.5

Telegraf 支持一个名为:exec的 INPUT 插件。首先请参阅那里的README文档中的示例 2 。我不能使用 JSON 格式,因为它只使用数值作为指标。根据文档:

所以,这个想法很简单,你在 exec 插件部分指定一个脚本,它应该吐出一些有意义的信息(在我的例子中是JSON - 或- influx数据格式,因为我有一些包含非数字值的指标)你会想要在一个很酷的仪表板中的某个地方捕捉/显示,例如此处显示 的Wavefront 仪表板::波前

基本上,人们可以使用这些指标、标签、这些指标的来源来找出有关内存、cpu、磁盘、网络、其他有意义的信息的各种信息,并在发生意外情况时使用这些信息创建警报。

好的,我想出了这个可用的 python 脚本:

此脚本将与 AWS EC2 EBS 卷对话并输出它可以找到的所有值(通常是您在 AWS EC2 EBS 卷控制台中看到的)并将该信息格式化为有意义的 CSV 格式,我将其重定向到 .csv 日志文件。 我们不想一直运行 python 脚本(AWS API 限制/成本因素)。

因此,一旦创建了 .csv 文件,我就创建了这个小的 shell 脚本,我将在Telegraf 的 exec 插件部分中设置它。

/tmp/aws-vol-info.shTelegraf exec 插件中设置的Shell 脚本为:

使用 exec 插件 ( ) 创建的 Telegraf 配置文件/etc/telegraf/telegraf.d/exec-plugin-aws-info.conf

调整了 .py(用于生成函数的 Python 脚本)以生成以下三种类型的输出格式(.csv 文件),并想在启用配置文件( /etc/ telegraf /telegraf. d/catch-aws-ebs-info.conf)并重新启动telegraf服务。


格式 1:("每个值都用双引号括起来)

在电报目录上测试telegraf配置给了我以下错误。

命令$ telegraf --config-directory=/etc/telegraf --test --input-filter=exec

格式 2:(不带任何"双引号)

在测试 Telegraf 的 exec 插件配置时出现相同的错误:

格式 3:(此格式的值中没有任何"双引号和空格字符)。_用字符替换空格。

仍然没有工作,得到同样的错误:

格式 4:如果我按照此页面遵循流入线协议: https ://docs.influxdata.com/influxdb/v1.2/write_protocols/line_protocol_tutorial/

我收到此错误

我怎样才能摆脱这个错误并让 telegraf 与 exec 插件(运行 .sh 脚本)一起工作


其他信息

Python 脚本将每天运行一次/两次(通过 cron),而 telegraf 将每 1 分钟运行一次(运行 exec 插件 - 运行 .sh 脚本 - 它将对 .csv 文件进行分类,以便 telegraf 可以以流入数据格式使用它) .

https://galaxy.ansible.com/wavefrontHQ/wavefront-ansible/

https://github.com/influxdata/telegraf/issues/2525

0 投票
1 回答
766 浏览

telegraf - Telegraf httpjson 插件错误 - 必须有一个或多个字段

我在电报中使用httpjson插件。

我的电报配置如下所示:

当我从浏览器获取 Json 时,它本身看起来像这样:

我从电报日志中得到的错误消息:

0 投票
1 回答
964 浏览

telegraf - 使用代理主机动态更新 Telegraf 配置?

我的基础架构中有许多网络交换机,我一直在使用 telegraf 从带有 snmp 的交换机收集数据流量信息。到目前为止,交换机 IP 地址已静态添加到配置中。我想知道是否可以从数据库中调用 IP 列表,所以我不需要每次都将它静态添加到配置中?或者也许电报只是不是那个工具。

通常的配置如下所示:

0 投票
2 回答
304 浏览

influxdb - 在到达之前过滤 InfluxDB 数据

伙计们,我将通过 Telegraf 通过 MQTT 获得的温度信息存储 7 天,并将其存储到我的 RapsberyyPI InfluxDB 上的信息中。当我想象我的温度时,我看到的温度值在 -200 到 +200 之间,这似乎是随机的。所以大多数时候我确实得到了正确的价值。只是想知道是否有办法告诉 Telegraf 只接受 -30 和 +40 之间的值,这样我就可以在将这些值插入到我的 Influx DB 之前过滤这些值。有任何想法吗?数据源来自在我的 Rapsi 上运行的 RTL_433 嗅探器,并将它得到的任何内容作为 JSON 发送。看起来这些数据并不总是像我需要的那样准确。

0 投票
1 回答
1110 浏览

systemd - 如何在电报中接收 systemd 状态和 docker 容器状态?

我正在尝试使用电报流式传输 docker stats,为此我使用此处指定的 docker 输入插件 - https://github.com/influxdata/telegraf/tree/master/plugins/inputs/docker

我正在尝试将输出发送到文件。我注意到除了他们输入插件页面中指定的 docker_container_status 之外,我正在获取所有 docker_container 数据。我能看到

但不是

我的工作需要所有容器的状态,非常感谢任何帮助。

关于我的设置的一些信息:

还有什么方法可以使用电报监控 systemd 服务状态?我目前看到有一个尚未合并的功能要求 - https://github.com/influxdata/telegraf/issues/2109

更新 - 1:docker 容器状态仅在尚未发布的 1.8 版中可用。

那么关于如何使用电报监控系统状态的任何建议?

0 投票
1 回答
1604 浏览

python - 尝试使用 input.exec 插件时权限被拒绝

我编写了一个打印出指标的 python 脚本,以便我可以将它们添加到 influxdb。该脚本作为我的本地用户工作。它也可以作为telegraf用户工作。

但是,该脚本在作为电报的一部分运行时会失败:

但是,如果我以 telegraf 用户身份运行它,它会按预期工作:

该脚本由 telegraf 拥有和执行:

我的 telegraf.conf 文件指向适当的位置:

最后,脚本本身非常基本:

我需要更改什么以便 Telegraf 执行此脚本而不会出现权限错误?

0 投票
1 回答
280 浏览

snmp - 是否有一个可以从经理那里读取 snmptraps 的电报插件?

是否有从 snmp 管理器读取 snmptraps 的电报插件

谢谢,辛哈德里