首页 > 解决方案 > 多设备 Telegraf nagios 插件的问题

问题描述

我正在尝试添加一些主机 (UPS) 来监控电池电量、逆变器状态、输入电压等。我一直在努力让它工作好几个小时。因此,Nagios 脚本似乎工作正常,并且至少有一些数据记录在 influxdb 中。但是,当尝试从 influx 网页上的数据资源管理器查看数据时,它似乎并没有保留各个主机的详细信息。我也有与下面相同的单独配置,但每个配置文件中只有一个主机,但它似乎没有区别。所有配置文件都将数据存储在同一个存储桶中。对查询和返回的数据进行了截图,因为我无法复制/粘贴并且仍然清晰可见。

查询选择

显示数据

这是我的配置:

[[inputs.exec]]
  timeout = "5s"
  commands = [
        "/usr/local/nagios/libexec/custom-plugins/check_ups_temperature -H 192.168.x.x -o 1.3.6.1.2.1.33.1.2.7.0 -v1 -C public -w 28 -c 31",
        "/usr/local/nagios/libexec/custom-plugins/check_ups_temperature -H 192.168.x.x -o 1.3.6.1.2.1.33.1.2.7.0 -v1 -C public -w 28 -c 31",
        "/usr/local/nagios/libexec/custom-plugins/check_ups_temperature -H 192.168.x.x -o 1.3.6.1.2.1.33.1.2.7.0 -v1 -C public -w 28 -c 31",
        "/usr/local/nagios/libexec/custom-plugins/check_ups_temperature -H 192.168.x.x -o 1.3.6.1.2.1.33.1.2.7.0 -v1 -C public -w 28 -c 31"
  ]
  name_suffix = "_ups_temp"
  data_format = "nagios"
 [[outputs.influxdb_v2]]
    urls = ["http://192.168.x.x:8086"]
    token = "--token--"
    organization = "--org--"
    bucket = "UPS"

任何指针将不胜感激。

标签: telegrafinfluxdb-2telegraf-inputs-plugin

解决方案


我会尝试使用不同的 name_suffix = "_ups_tempXX" 进行多个 [[inputs.exec]] 配置,其中 XX 可以识别源设备。它将数据放在不同的测量中。另一种方法是在您的电报执行配置中添加标签键。从顶级 JSON 服务器响应中提取的标签名称列表:tag_keys = [ "my_tag_1", "my_tag_2" ]

但在这种情况下,您需要通过发送标签键的值来更新您的执行响应。作为标签键,您可以使用设备 IP 或其他可以让您轻松过滤来自所有来源的数据的东西。我找到了一些旧文档,可能对您有帮助:https ://archive.docs.influxdata.com/telegraf/v1.3/concepts/data_formats_input/


推荐阅读