FC_RTTable - how to list snmp table data

Submitted by admin on Sat, 08/21/2010 - 10:52

FC_RTTable is a tool that allows you to collect and list table data from SNMP enabled devices in (multi-column) tables and can be controlled by an XML formatted config file. The table can automatically refresh every 10 seconds and columns can be sorted by clicking the column headers. FC_RTTable is an excellent tool for real-time monitoring. FC_RTTable supports SNMPv1, SNMPv2 and SNMPv3 and runs on all Windows versions from Windows XP onwards.

FC_RTTable explained

Free version versus commercial version

The free version is limited to supporting the mib-2 OIDs (all OIDs under 1.3.6.1.2.1). The licensed/commercial version does not have any limitation!

Commandline

FC_RTTable can be started from the commandline or through a shortcut on the desktop. The name and location of the config xml file can be specified using the /xml commandline switch as in:

C:\RTTable\FC_RTTable.exe /xml "C:\RTTable\TableConfig.xml"

Base config file for FC_RTTable

The config xml file has the following format

<?xml version="1.0"?>
<fccomp>
   <comptype>rttable</comptype>
   <programtitle></programtitle>
   <savesettfile></savesettfile>
   <left></left>
   <top></top>
   <width></width>
   <height></height>
   <preferredinstance></preferredinstance>
   <charttitle></charttitle>
   <savessfile></savessfile>
   <columnwidthtotextwidth></columnwidthtotextwidth>
   <host></host>
   <community></community>
   <snmpport></snmpport>
   <snmpversion></snmpversion>
   <shooter>
      <sortoid></sortoid>
      <shootertargettable>
         <shootertargetentry>
            <oid></oid>
            <instance></instance>
         </shootertargetentry>
      </shootertargettable>
   </shooter>
   <oidtable>
      <oidentry>
         <oid></oid>
         <oiddescr></oiddescr>
         <format>:</format>
         <oidtype></oidtype>
      </oidentry>
   </oidtable>
   <vendorspecific>
      <vlogofile></vlogofile>
      <vappname></vappname>
      <vappversion></vappversion>
   </vendorspecific>
</fccomp>

The XML tags explained in detail! - The tag reference table.

The reference table for the xml tag descriptions used in the FineConnection components can be found here.

Examples

Attention! Attention! If you copy and paste the xml examples shown below don't forget to modify the "host dependent" fields in order to poll devices in your own network environment. Also, be aware that not all hosts support snmp nor have it enabled by default!

Example 1.

The xml configuration file below reads the ifEntry table from an SNMP enabled server and shows the values in one long list. What does the trick here is the oid value 1.3.6.1.2.1.2.2.1. Simply everything "under" this oid is read and listed.

<?xml version="1.0"?>
<fccomp>
   <comptype>rttable</comptype>
   <programtitle>Example 1</programtitle>
   <savesettfile></savesettfile>
   <left></left>
   <top></top>
   <width></width>
   <height></height>
   <preferredinstance></preferredinstance>
   <charttitle>ifTable data in a list</charttitle>
   <savessfile></savessfile>
   <columnwidthtotextwidth>false</columnwidthtotextwidth>
   <host>uranium</host>
   <community>public</community>
   <snmpport>161</snmpport>
   <snmpversion>1</snmpversion>
   <shooter>
      <sortoid></sortoid>
      <shootertargettable>
         <shootertargetentry>
            <oid>1.3.6.1.2.1.2.2.1</oid>
            <instance></instance>
         </shootertargetentry>
      </shootertargettable>
   </shooter>
   <oidtable>
      <oidentry>
         <oid>1.3.6.1.2.1.2.2.1</oid>
         <oiddescr>ifEntry</oiddescr>
         <format></format>
         <oidtype></oidtype>
      </oidentry>
      <oidentry>
         <oid>1.3.6.1.2.1.2.2.1.1</oid>
         <oiddescr>ifIndex</oiddescr>
         <format></format>
         <oidtype>Integer</oidtype>
      </oidentry>
      <oidentry>
         <oid>1.3.6.1.2.1.2.2.1.2</oid>
         <oiddescr>ifDescr</oiddescr>
         <format></format>
         <oidtype>OctetString</oidtype>
      </oidentry>
      <oidentry>
         <oid>1.3.6.1.2.1.2.2.1.3</oid>
         <oiddescr>ifType</oiddescr>
         <format></format>
         <oidtype>Integer</oidtype>
      </oidentry>
      <oidentry>
         <oid>1.3.6.1.2.1.2.2.1.4</oid>
         <oiddescr>ifMtu</oiddescr>
         <format></format>
         <oidtype>Integer</oidtype>
      </oidentry>
      <oidentry>
         <oid>1.3.6.1.2.1.2.2.1.5</oid>
         <oiddescr>ifSpeed</oiddescr>
         <format></format>
         <oidtype>Gauge32</oidtype>
      </oidentry>
      <oidentry>
         <oid>1.3.6.1.2.1.2.2.1.6</oid>
         <oiddescr>ifPhysAddress</oiddescr>
         <format>hex:</format>
         <oidtype>OctetString</oidtype>
      </oidentry>
      <oidentry>
         <oid>1.3.6.1.2.1.2.2.1.7</oid>
         <oiddescr>ifAdminStatus</oiddescr>
         <format>mapto:1,up,2,down,3,testing,</format>
         <oidtype>Integer</oidtype>
      </oidentry>
      <oidentry>
         <oid>1.3.6.1.2.1.2.2.1.8</oid>
         <oiddescr>ifOperStatus</oiddescr>
         <format>mapto:1,up,2,down,3,testing,4,unknown,5,dormant,6,notPresent,7,lowerLayerDown,</format>
         <oidtype>Integer</oidtype>
      </oidentry>
      <oidentry>
         <oid>1.3.6.1.2.1.2.2.1.9</oid>
         <oiddescr>ifLastChange</oiddescr>
         <format>timeticks:</format>
         <oidtype>TimeTicks</oidtype>
      </oidentry>
      <oidentry>
         <oid>1.3.6.1.2.1.2.2.1.10</oid>
         <oiddescr>ifInOctets</oiddescr>
         <format></format>
         <oidtype>Counter32</oidtype>
      </oidentry>
      <oidentry>
         <oid>1.3.6.1.2.1.2.2.1.11</oid>
         <oiddescr>ifInUcastPkts</oiddescr>
         <format></format>
         <oidtype>Counter32</oidtype>
      </oidentry>
      <oidentry>
         <oid>1.3.6.1.2.1.2.2.1.12</oid>
         <oiddescr>ifInNUcastPkts</oiddescr>
         <format></format>
         <oidtype>Counter32</oidtype>
      </oidentry>
      <oidentry>
         <oid>1.3.6.1.2.1.2.2.1.13</oid>
         <oiddescr>ifInDiscards</oiddescr>
         <format></format>
         <oidtype>Counter32</oidtype>
      </oidentry>
      <oidentry>
         <oid>1.3.6.1.2.1.2.2.1.14</oid>
         <oiddescr>ifInErrors</oiddescr>
         <format></format>
         <oidtype>Counter32</oidtype>
      </oidentry>
      <oidentry>
         <oid>1.3.6.1.2.1.2.2.1.15</oid>
         <oiddescr>ifInUnknownProtos</oiddescr>
         <format></format>
         <oidtype>Counter32</oidtype>
      </oidentry>
      <oidentry>
         <oid>1.3.6.1.2.1.2.2.1.16</oid>
         <oiddescr>ifOutOctets</oiddescr>
         <format></format>
         <oidtype>Counter32</oidtype>
      </oidentry>
      <oidentry>
         <oid>1.3.6.1.2.1.2.2.1.17</oid>
         <oiddescr>ifOutUcastPkts</oiddescr>
         <format></format>
         <oidtype>Counter32</oidtype>
      </oidentry>
      <oidentry>
         <oid>1.3.6.1.2.1.2.2.1.18</oid>
         <oiddescr>ifOutNUcastPkts</oiddescr>
         <format></format>
         <oidtype>Counter32</oidtype>
      </oidentry>
      <oidentry>
         <oid>1.3.6.1.2.1.2.2.1.19</oid>
         <oiddescr>ifOutDiscards</oiddescr>
         <format></format>
         <oidtype>Counter32</oidtype>
      </oidentry>
      <oidentry>
         <oid>1.3.6.1.2.1.2.2.1.20</oid>
         <oiddescr>ifOutErrors</oiddescr>
         <format></format>
         <oidtype>Counter32</oidtype>
      </oidentry>
      <oidentry>
         <oid>1.3.6.1.2.1.2.2.1.21</oid>
         <oiddescr>ifOutQLen</oiddescr>
         <format></format>
         <oidtype>Gauge32</oidtype>
      </oidentry>
      <oidentry>
         <oid>1.3.6.1.2.1.2.2.1.22</oid>
         <oiddescr>ifSpecific</oiddescr>
         <format>oid:</format>
         <oidtype>ObjectID</oidtype>
      </oidentry>
   </oidtable>
   <vendorspecific>
      <vlogofile></vlogofile>
      <vappname></vappname>
      <vappversion></vappversion>
   </vendorspecific>
</fccomp>

Example 2.

The xml file below lists the descriptions of all available interfaces from the SNMP enabled server.

<?xml version="1.0"?>
<fccomp>
   <comptype>rttable</comptype>
   <programtitle>Example 2</programtitle>
   <savesettfile></savesettfile>
   <left></left>
   <top></top>
   <width></width>
   <height></height>
   <preferredinstance></preferredinstance>
   <charttitle>The description of the available interfaces</charttitle>
   <savessfile></savessfile>
   <columnwidthtotextwidth>false</columnwidthtotextwidth>
   <host>uranium</host>
   <community>public</community>
   <snmpport>161</snmpport>
   <snmpversion>1</snmpversion>
   <shooter>
      <sortoid></sortoid>
      <shootertargettable>
         <shootertargetentry>
            <oid>1.3.6.1.2.1.2.2.1.2</oid>
            <instance></instance>
         </shootertargetentry>
      </shootertargettable>
   </shooter>
   <oidtable>
      <oidentry>
         <oid>1.3.6.1.2.1.2.2.1.2</oid>
         <oiddescr>ifDescr</oiddescr>
         <format></format>
         <oidtype>OctetString</oidtype>
      </oidentry>
   </oidtable>
   <vendorspecific>
      <vlogofile></vlogofile>
      <vappname></vappname>
      <vappversion></vappversion>
   </vendorspecific>
</fccomp>

Example 3.

The xml file below lists the Name, Speed, Incoming and Outgoing bytes of the available interfaces from the SNMP enabled server. I've also used the <sortoid> tag in this example. The rows of the table are sorted based on the value of the "Outgoing bytes" column. The "-" symbol preceding the oid in the <sortoid> tag means descending.

<?xml version="1.0"?>
<fccomp>
   <comptype>rttable</comptype>
   <programtitle>Example 3</programtitle>
   <savesettfile></savesettfile>
   <left></left>
   <top></top>
   <width></width>
   <height></height>
   <preferredinstance></preferredinstance>
   <charttitle>Interface details</charttitle>
   <savessfile></savessfile>
   <columnwidthtotextwidth>false</columnwidthtotextwidth>
   <host>uranium</host>
   <community>public</community>
   <snmpport>161</snmpport>
   <snmpversion>1</snmpversion>
   <shooter>
      <sortoid>-1.3.6.1.2.1.2.2.1.16</sortoid>
      <shootertargettable>
         <shootertargetentry>
            <oid>1.3.6.1.2.1.2.2.1.2</oid>
            <instance></instance>
         </shootertargetentry>
         <shootertargetentry>
            <oid>1.3.6.1.2.1.2.2.1.5</oid>
            <instance></instance>
         </shootertargetentry>
         <shootertargetentry>
            <oid>1.3.6.1.2.1.2.2.1.10</oid>
            <instance></instance>
         </shootertargetentry>
         <shootertargetentry>
            <oid>1.3.6.1.2.1.2.2.1.16</oid>
            <instance></instance>
         </shootertargetentry>
      </shootertargettable>
   </shooter>
   <oidtable>
      <oidentry>
         <oid>1.3.6.1.2.1.2.2.1.2</oid>
         <oiddescr>ifDescr</oiddescr>
         <format></format>
         <oidtype>OctetString</oidtype>
      </oidentry>
      <oidentry>
         <oid>1.3.6.1.2.1.2.2.1.5</oid>
         <oiddescr>ifSpeed</oiddescr>
         <format></format>
         <oidtype>Gauge32</oidtype>
      </oidentry>
      <oidentry>
         <oid>1.3.6.1.2.1.2.2.1.10</oid>
         <oiddescr>ifInOctets</oiddescr>
         <format></format>
         <oidtype>Counter32</oidtype>
      </oidentry>
      <oidentry>
         <oid>1.3.6.1.2.1.2.2.1.16</oid>
         <oiddescr>ifOutOctets</oiddescr>
         <format></format>
         <oidtype>Counter32</oidtype>
      </oidentry>
   </oidtable>
   <vendorspecific>
      <vlogofile></vlogofile>
      <vappname></vappname>
      <vappversion></vappversion>
   </vendorspecific>
</fccomp>

Example 4.

The xml file below demonstrates the use of the "Instance" tag in the Shooter Targets. You can specify different OIDs and Instances as long as the OIDs have the same parent (are from the same branch of the snmp mib tree).

<?xml version="1.0"?>
<fccomp>
   <comptype>rttable</comptype>
   <programtitle>Example 4</programtitle>
   <savesettfile></savesettfile>
   <left></left>
   <top></top>
   <width></width>
   <height></height>
   <preferredinstance></preferredinstance>
   <charttitle>Details various interfaces</charttitle>
   <savessfile></savessfile>
   <columnwidthtotextwidth>false</columnwidthtotextwidth>
   <host>192.168.3.10</host>
   <community>public</community>
   <snmpport>161</snmpport>
   <snmpversion>1</snmpversion>
   <shooter>
      <sortoid></sortoid>
      <shootertargettable>
         <shootertargetentry>
            <oid>1.3.6.1.2.1.2.2.1.2</oid>
            <instance>.7</instance>
         </shootertargetentry>
         <shootertargetentry>
            <oid>1.3.6.1.2.1.2.2.1.5</oid>
            <instance>.8</instance>
         </shootertargetentry>
         <shootertargetentry>
            <oid>1.3.6.1.2.1.2.2.1.10</oid>
            <instance>.9</instance>
         </shootertargetentry>
         <shootertargetentry>
            <oid>1.3.6.1.2.1.2.2.1.16</oid>
            <instance>.10</instance>
         </shootertargetentry>
      </shootertargettable>
   </shooter>
   <oidtable>
      <oidentry>
         <oid>1.3.6.1.2.1.2.2.1.2</oid>
         <oiddescr>ifDescr</oiddescr>
         <format></format>
         <oidtype>OctetString</oidtype>
      </oidentry>
      <oidentry>
         <oid>1.3.6.1.2.1.2.2.1.5</oid>
         <oiddescr>ifSpeed</oiddescr>
         <format></format>
         <oidtype>Gauge32</oidtype>
      </oidentry>
      <oidentry>
         <oid>1.3.6.1.2.1.2.2.1.10</oid>
         <oiddescr>ifInOctets</oiddescr>
         <format></format>
         <oidtype>Counter32</oidtype>
      </oidentry>
      <oidentry>
         <oid>1.3.6.1.2.1.2.2.1.16</oid>
         <oiddescr>ifOutOctets</oiddescr>
         <format></format>
         <oidtype>Counter32</oidtype>
      </oidentry>
   </oidtable>
   <vendorspecific>
      <vlogofile></vlogofile>
      <vappname></vappname>
      <vappversion></vappversion>
   </vendorspecific>
</fccomp>

© 2000-2012 FineConnection. Drupal theme by Kiwi Themes.