Snmp.input.table into table

I am new to Telegraf and InfluxDB. I am trying to input data into a table.

When I do
snmpwalk -v 1 -c public 172.16.48.144 TRIPPLITE-12X::tlCoolingEnvironment

it returns

    TRIPPLITE-12X::tlCoolingModel.0 = STRING: SR(X)COOL
    TRIPPLITE-12X::tlCoolingManufacturer.0 = STRING: TrippLite
    TRIPPLITE-12X::tlCoolingSerialNumber.0 = STRING: 2715JV0AC884800273
    TRIPPLITE-12X::tlCoolingHostSoftwareVersion.0 = STRING: 12.06.0069.13078.12917
    TRIPPLITE-12X::tlCoolingName.0 = STRING: Server Room AC
    TRIPPLITE-12X::tlCoolingLocation.0 = STRING: Server Room
    TRIPPLITE-12X::tlCoolingReturnAirTemp.0 = INTEGER: 840
    TRIPPLITE-12X::tlCoolingOnOff.0 = INTEGER: turnOnUnit(1)
    TRIPPLITE-12X::tlCoolingDisplayUnits.0 = INTEGER: english(1)

My config looks like this

[[inputs.snmp]]
  agents = [ "172.16.48.144" ]
  version = 1
  community = "public"
  interval = "60s"

[[inputs.snmp.table]]
   oid ="TRIPPLITE-12X::tlCoolingEnvironment"
   name = "CoolingEnvironment"
   [[inputs.snmp.table.field]]
         oid = "TRIPPLITE-12X::tlCoolingEnvironment"

It is putting each value in the tlCoolingEnvironment field. How can I get it to put each value in its own field?
If I do this it gives me the result I want

[[inputs.snmp]]
  agents = [ "172.16.48.144" ]
  version = 1
  community = "public"
  interval = "60s"
[[inputs.snmp.table]]
   oid ="TRIPPLITE-12X::tlCoolingEnvironment"
   name = "CoolingEnvironment"
   [[inputs.snmp.table.field]]
     oid = "TRIPPLITE-12X::tlCoolingModel"
   [[inputs.snmp.table.field]]
     oid = "TRIPPLITE-12X::tlCoolingManufacturer"
   [[inputs.snmp.table.field]]
     oid = "TRIPPLITE-12X::tlCoolingSerialNumber"
   [[inputs.snmp.table.field]]
     oid = "TRIPPLITE-12X::tlCoolingFirmwareVersion"
   [[inputs.snmp.table.field]]
     oid = "TRIPPLITE-12X::tlCoolingName"
   [[inputs.snmp.table.field]]
     oid = "TRIPPLITE-12X::tlCoolingLocation"
   [[inputs.snmp.table.field]]
     oid = "TRIPPLITE-12X::tlCoolingReturnAirTemp"
   [[inputs.snmp.table.field]]
     oid = "TRIPPLITE-12X::tlCoolingOnOff"
   [[inputs.snmp.table.field]]
     oid = "TRIPPLITE-12X::tlCoolingDisplayUnits"

I’m guessing TRIPPLITE-12X::tlCoolingEnvironment is not a table, do you get an error when you run this:

snmptable -v1 -c public 172.16.48.144 TRIPPLITE-12X::tlCoolingEnvironment

Using the [[inputs.snmp.table]] section on a non-table OID isn’t really supported, it will walk the tree but Telegraf doesn’t know the the OID -> Name mapping to name fields unless you specify it like in your second example.

1 Like

Yes, I get an error. I was just looking for a shortcut to typing out all the fields. Thanks for the answer.