Open xenoxaos opened 4 years ago
Actually it is better to use separate measurements here rather than trying to group unrelated metrics into the same measurement. Using separate measurements keeps the data manageable and useful. An influxdb measurement is analogous to a relational database table.
Attempting to put everything into a single measurement while keeping useful/needed tags would result in a significant increase in series cardinality needlessly. That in turn would result in increased memory demands on the influxdb server, potentially significantly.
The measurement names are derived directly from the actual SNMP object names. For instance ifTable is the standard SNMP IF-MIB::ifTable, which is queried and returned as an actual table then stored as its own influxdb measurement equivalent to that SNMP Table.
Thanks for the info. I'm still working on understanding on how all this snmp stuff works. I'm sure there's a way to do it, but can you help with limiting the number of interfaces that it scrapes? I only use eth0 and eth1 (at least for now) on my edgerouter pro 8
You can filter the interfaces displayed on the dashboard using the 'Interface' dropdown at the top.
The Telegraf SNMP plugin retrieves the tables as actual tables, so all interfaces are returned. You could probably use telegraf filtering to then only actually save the data for the interfaces you want. Review of some of the telegraf documentation might be helpful for this, but off the top of my head I would try adding a line 'namepass = ['eth0', 'eth1'] to the relevant subsections for the input configuration (IE: in the two inputs.snmp.table sections for interface metrics). Some experimentation might be needed to get it right.
The only downside I'm seeing with using this is that it creates a lot of different measurements in my influxdb. Is there a way to make them all under one measurement like UBNT or something and not hrDeviceTable IfTable, IfXTable, etc?