servers returning Hex-STRING instead of DisplayString = trailing NULL

20 views
Skip to first unread message

Jonathan Tougas

unread,
Apr 30, 2023, 5:25:19 AM4/30/23
to Prometheus Users
I'm looking for a way to deal with a situation where we end up with null characters trailing some label values: `count({ifDescr=~".*\x00"}) != 0`.

The source of the problem seems to be with `ifDescr` returned as a `Hex-String` instead of what the MIB says should be a `DisplayString`... for __some__ servers.

# Good,  99% of servers:
$ snmpget -v 2c -c $creds 172.21.34.10 1.3.6.1.2.1.2.2.1.2.1
iso.3.6.1.2.1.2.2.1.2.1 = STRING: "eth0"

# Bad, Cisco CVP tsk tsk tsk...
$ snmpget -v 2c -c $creds 172.20.220.88 1.3.6.1.2.1.2.2.1.2.1
iso.3.6.1.2.1.2.2.1.2.1 = Hex-STRING: 53 6F 66 74 77 61 72 65 20 4C 6F 6F 70 62 61 63
6B 20 49 6E 74 65 72 66 61 63 65 20 31 00

I'm currently planning on using `metric_relabel_configs` to cleanup the trailing nulls on these and other similar situations I uncovered.
Is there better way than mopping up like that? Perhaps snmp-exporter can deal with these and convert somehow? I'm not familiar enough with it to figure out if it can or not.
Reply all
Reply to author
Forward
0 new messages