【问题标题】:Posting ipmitool data to influxdb for use in grafana将 ipmitool 数据发布到 influxdb 以在 grafana 中使用
【发布时间】:2020-07-28 10:29:54
【问题描述】:

我的 Linux bash 技能还很初级,所以我正在寻求帮助。我正在尝试将一些 CPU 温度数据插入到流入数据库中,以便它可以显示在 Grafana 仪表板上。

到目前为止,我已经能够在 Linux 中通过 ipmitool 检索 CPU 温度,请参见下面的示例...它显示了我运行的命令以及生成的温度数据。

ipmitool sdr elist full | grep CPU | grep Temp | cut -d "|" -f 5 | cut -d " " -f 2
40
47

我想将这些数字输入到变量中,这样我就可以使用类似下面的命令将它们插入到 influx 数据库中。

curl -i -XPOST 'http://localhost:8086/write?db=mydb' --data-binary 'server_temps,sensor=CPU1, value=23' 

上面的命令是手动运行的,将值 23 插入到 influx 数据库中。我想做的是自动化数据收集和插入到流入数据库中......但对于 CPU1 和 CPU2。

最初我想我可能需要几个 curl 部分,以便每 30 秒左右将 CPU1 和 CPU2 的温度添加到数据库中。如果我可以让它工作,我可能会想从 ipmitool 添加额外的数据。

我怀疑我这样做可能不是最好的方法?非常感谢所有的想法和帮助。

【问题讨论】:

    标签: linux curl grafana influxdb ipmitool


    【解决方案1】:

    使用简单的 bash 循环就足够了吗?

    for temperature in $(ipmitool sdr elist full | grep CPU | grep Temp | cut -d "|" -f 5 | cut -d " " -f 2)
    do 
      curl -i -XPOST "http://localhost:8086/write?db=mydb' --data-binary 'server_temps,sensor=inlet, value=$temperature"
    done
    

    【讨论】:

    • 您好 Łukasz,感谢您的回复...我能问一个可能很愚蠢的问题吗?查询 ipmitool 的代码部分返回两个温度值,即每个 CPU 的一个值。我希望将 2 个单独的温度值写入流入数据库,例如 server_temps,sensor=CPU1 和 server_temps,sensor=CPU2。对不起,我应该更清楚。您提供的代码,我可能可以添加两行?每个 CPU 一个?不确定?
    猜你喜欢
    • 2017-08-03
    • 1970-01-01
    • 2017-07-26
    • 1970-01-01
    • 1970-01-01
    • 2022-01-11
    • 1970-01-01
    • 1970-01-01
    • 2018-11-02
    相关资源
    最近更新 更多