我尝试配置bosun scollector,我得到了整数格式输出的snmpwalk工作,但是当我尝试使用cpu使用时获得一些输出时,输出时它是字符串格式。
例如:
.1.3.6.1.4.1.2620.1.48.23.1.4.1.0 = INTEGER: 23
---工作
.1.3.6.1.4.1.2620.1.48.29.1.2.2.0 = STRING: "1%"
---无法正常工作
这是配置:
Host = "http://localhost:8070"
DisableSelf = true
Freq = 60
Filter = ["snmp-generic", "snmp-ifaces"]
[[SNMP]]
Community = "test"
Host = "name"
MIBs = [ "fwname"]
[Tags]
product = "fw"
[MIBs]
[MIBs.fw]
BaseOid = ".1.3.6.1.4.1.2620"
[[MIBs.fw.Metrics]]
Metric = "os.cpu"
Oid = ".1.6.7.2.4.0"
Unit = "percent"
RateType = "gauge"
[[MIBs.fw.Metrics]]
Metric = "os.cpu.used"
Oid = ".1.6.7.4.5.0"
Unit = "percent"
RateType = "gauge"
这是错误消息:
2016/12/01 21:37:08 error: interval.go:64: snmp-generic-fw strconv.ParseFloat: parsing "0%": invalid syntax
我知道这是字符串格式问题,但任何想法我如何修复它支持字符串
谢谢大家的帮助
答案 0 :(得分:0)
指标必须是整数或浮点值。该错误可能是因为尝试将类似“60%”的字符串转换为浮点数,这是无效的转换/转换。使用整数版本的OID可以正常工作,因为可以成功转换。
您必须找到另一个使用原始整数的OID,或者编写一个将“60%”字符串转换为整数的自定义收集器。