Hi,
I'm trying to fetch the contents of an SNMP table but I only get the first row. However, specifying the OID of a single cell in the second row does successfully return the correct value of that cell. Any idea on why that would happen?
On the table param I use
<SNMP>
<Enabled>true</Enabled>
<OID type="complete" options="instance;multipleGetNext">1.3.6.1.4.1.<vendor-OID>.12.10.3</OID>
</SNMP>
and on the columns I add the SNMP tag as well like this on the first column:
<SNMP>
<Enabled>true</Enabled>
<OID type="complete">1.3.6.1.4.1.<vendor-OID>.12.10.3.1.1</OID>
</SNMP>
and finally the Group is defined as:
<Group id="6">
...
<Type>poll</Type>
<Content>
<Param>1030</Param>
</Content>
</Group>
Hi Robin,
I can see a mistake in your definition.
You use multipleGetNext polling method in combo with the instance option. This means:
- Advised to leave the Table OID value empty. = to avoid duplicate Get requests for the index.
- Do not add the SNMP definition in the column used as index. = this is filled in by the instance option.
- Add SNMP definitions to all other columns
<Param id="300" trending="false">
<Name>atTable</Name>
<Description>Address Translation Table</Description>
<Type>array</Type>
<ArrayOptions index="0">...</ArrayOptions>
<Information>...</Information>
<Interprete>...</Interprete>
<SNMP>
<Enabled>true</Enabled>
<OID type="complete"
options=";instance;multiplegetnext"></OID>
</SNMP>
<Display>...</Display>
<Measurement>...</Measurement>
</Param>
<Param id="301" trending="false">
<Name>atIndex</Name>
<Description>Index (Address Translation)</Description>
<Information>...</Information>
<Type>read</Type>
<Interprete>...</Interprete>
<Display>...</Display>
<Measurement>...</Measurement>
</Param>
In case you want to use the Get next + multiple get method with the instance option:
- Leave the Table OID value empty
- the options attribute on the Table OID should only contain ;instance
- Do not add the SNMP definition in the column used as index. = this is filled in by the instance option.
- Add SNMP definitions to all other columns
<SNMP>
<Enabled>true</Enabled>
<OID type="complete"
options=";instance"></OID>
</SNMP>
Also don't forget that the ColumnOptions type of the table param should be "snmp"
<Param id="150" trending="false">
<Name>ifTable</Name>
<Description>Interfaces</Description>
<Type>array</Type>
<ArrayOptions index="0" options=";naming=/152">
<ColumnOption idx="0" pid="151" type="snmp" options="" />
<ColumnOption idx="1" pid="152" type="snmp" options="" />
<ColumnOption idx="2" pid="153" type="snmp" options="" />
<ColumnOption idx="3" pid="154" type="snmp" options="" />
</ArrayOptions>