OhmGraphite监控温度时host主机名全大写问题

天锦 发表于 码农也得有格调 分类,标签:

之前提到过我用Telegraf+InfluxDB+Grafana监控服务器性能,由于Telegraf监控不到硬件信息,我便在部署Telegraf的同时部署了OhmGraphite,但OhmGraphite写入InfluxDB的数据中,标签host的值全为大写,我的某个主机名为“Inspiron-3568”,Telegraf能正确反馈,但OhmGraphite反馈的host="INSPIRON-3568",这使得当我在Grafana中通过host区分信息来源的时候,将本是一个设备的信息,分成了两个。

具体原因是NetBIOS与DNS的区别,OhmGraphite使用的是通过NetBIOS 获取的主机名,所以是全为大写。

using System.Net;
Environment.MachineName // NetBIOS
Dns.GetHostName()

输出:

INSPIRON-3568
Inspiron-3568

解决方法就是下载OhmGraphite源代码,将Environment.MachineName更改为Dns.GetHostName()后重新编译生成OhmGraphite.exe

更新

已在0.8.3中添加了name_lookup参数用来选择NetBIOS或者DNS作为主机名

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <appSettings>
    <add key="name_lookup" value="dns" />
  </appSettings>
</configuration>

https://github.com/nickbabcock/OhmGraphite/issues/53

0 篇评论

发表我的评论