Looking at ifAdminStatus (1.3.6.1.2.1.2.2.1.7). I'm pulling it as a guage. It should only return a 1 or a 2 (up/down) of type integer. Whenever I do an SNMP walk that is all I see:
[zenoss@bigzenosstest CustomComponents]$ snmpwalk -vXXX -cXXX X.X.X.X 1.3.6.1.2.1.2.2.1.7
IF-MIB::ifAdminStatus.1 = INTEGER: up(1)
IF-MIB::ifAdminStatus.10101 = INTEGER: up(1)
IF-MIB::ifAdminStatus.10102 = INTEGER: up(1)
IF-MIB::ifAdminStatus.10103 = INTEGER: up(1)
IF-MIB::ifAdminStatus.10104 = INTEGER: up(1)
IF-MIB::ifAdminStatus.10105 = INTEGER: up(1)
IF-MIB::ifAdminStatus.10106 = INTEGER: up(1)
IF-MIB::ifAdminStatus.10107 = INTEGER: down(2)
IF-MIB::ifAdminStatus.10108 = INTEGER: up(1)
IF-MIB::ifAdminStatus.10109 = INTEGER: up(1)
IF-MIB::ifAdminStatus.10110 = INTEGER: up(1)
IF-MIB::ifAdminStatus.10111 = INTEGER: up(1)
IF-MIB::ifAdminStatus.10112 = INTEGER: up(1)
IF-MIB::ifAdminStatus.10113 = INTEGER: up(1)
IF-MIB::ifAdminStatus.10114 = INTEGER: up(1)
IF-MIB::ifAdminStatus.10115 = INTEGER: up(1)
IF-MIB::ifAdminStatus.10116 = INTEGER: up(1)
IF-MIB::ifAdminStatus.10117 = INTEGER: up(1)
IF-MIB::ifAdminStatus.10118 = INTEGER: up(1)
IF-MIB::ifAdminStatus.10119 = INTEGER: up(1)
IF-MIB::ifAdminStatus.10120 = INTEGER: up(1)
IF-MIB::ifAdminStatus.10121 = INTEGER: up(1)
IF-MIB::ifAdminStatus.10122 = INTEGER: up(1)
IF-MIB::ifAdminStatus.10123 = INTEGER: up(1)
IF-MIB::ifAdminStatus.10124 = INTEGER: up(1)
IF-MIB::ifAdminStatus.10125 = INTEGER: up(1)
IF-MIB::ifAdminStatus.10126 = INTEGER: up(1)
IF-MIB::ifAdminStatus.10127 = INTEGER: up(1)
IF-MIB::ifAdminStatus.10128 = INTEGER: up(1)
IF-MIB::ifAdminStatus.10201 = INTEGER: up(1)
IF-MIB::ifAdminStatus.10202 = INTEGER: up(1)
IF-MIB::ifAdminStatus.10501 = INTEGER: up(1)
IF-MIB::ifAdminStatus.10502 = INTEGER: up(1)
Here is my RRD Archive header - as you can see it is of type gauge:
<!-- Round Robin Database Dump --><rrd> <version> 0003 </version>
<step> 300 </step> <!-- Seconds -->
<lastupdate> 1315504776 </lastupdate> <!-- 2011-09-08 13:59:36 EDT -->
<ds>
<name> ds0 </name>
<type> GAUGE </type>
<minimal_heartbeat> 900 </minimal_heartbeat>
<min> NaN </min>
<max> NaN </max>
<!-- PDP Status -->
<last_ds> 2.0 </last_ds>
<value> 5.5352637800e+02 </value>
<unknown_sec> 0 </unknown_sec>
</ds>
<!-- Round Robin Archives --> <rra>
<cf> AVERAGE </cf>
<pdp_per_row> 1 </pdp_per_row> <!-- 300 seconds -->
<params>
<xff> 5.0000000000e-01 </xff>
</params>
<cdp_prep>
<ds>
<primary_value> 1.6305668200e+00 </primary_value>
<secondary_value> 1.0000000000e+00 </secondary_value>
<value> NaN </value>
<unknown_datapoints> 0 </unknown_datapoints>
</ds>
</cdp_prep>
<database>
When I shut/noshut the interface I would expect only 1s and 2s in my RRA. However when I shut the interface down for one poll I get 1.61 and then it gets up to 2 on the next. Likewise, when I do a no shutdown (should go 2 to 1) I get a 1.37 between the 2 and 1 polls. It's my understanding that this should not be happening with Guage. Has anyone see this behavior before? This is on a Cisco 3560 for reference.
| <!-- 2011-09-08 12:35:00 EDT / 1315499700 --> <row><v> 1.0000000000e+00 </v></row> |
<!-- 2011-09-08 12:40:00 EDT / 1315500000 --> <row><v> 1.0000000000e+00 </v></row> | |
<!-- 2011-09-08 12:45:00 EDT / 1315500300 --> <row><v> 1.0000000000e+00 </v></row> | |
<!-- 2011-09-08 12:50:00 EDT / 1315500600 --> <row><v> 1.0000000000e+00 </v></row> | |
<!-- 2011-09-08 12:55:00 EDT / 1315500900 --> <row><v> 1.0000000000e+00 </v></row> | |
<!-- 2011-09-08 13:00:00 EDT / 1315501200 --> <row><v> 1.0000000000e+00 </v></row> | |
<!-- 2011-09-08 13:05:00 EDT / 1315501500 --> <row><v> 1.0000000000e+00 </v></row> | |
<!-- 2011-09-08 13:10:00 EDT / 1315501800 --> <row><v> 1.6104536167e+00 </v></row> | |
<!-- 2011-09-08 13:15:00 EDT / 1315502100 --> <row><v> 2.0000000000e+00 </v></row> | |
<!-- 2011-09-08 13:20:00 EDT / 1315502400 --> <row><v> 2.0000000000e+00 </v></row> | |
<!-- 2011-09-08 13:25:00 EDT / 1315502700 --> <row><v> 2.0000000000e+00 </v></row> | |
<!-- 2011-09-08 13:30:00 EDT / 1315503000 --> <row><v> 2.0000000000e+00 </v></row> | |
<!-- 2011-09-08 13:35:00 EDT / 1315503300 --> <row><v> 1.3743194867e+00 </v></row> | |
<!-- 2011-09-08 13:40:00 EDT / 1315503600 --> <row><v> 1.0000000000e+00 </v></row> | |
<!-- 2011-09-08 13:45:00 EDT / 1315503900 --> <row><v> 1.0000000000e+00 </v></row> | |
<!-- 2011-09-08 13:50:00 EDT / 1315504200 --> <row><v> 1.6305668200e+00 </v></row> |