Hi,

I'm fairly certain this is a bug in your SNMP agent. The value in question has an OID:

   1.3.6.1.2.1.4.21.1.1.0.0.0.0

I believe this refers to the default route.  The encoded value for this is:

   "@\x08\x00\x00\x00\x00\x00\x00\x00\x00"

This is the part that fails to decode. The "@" is '0x40' which fails to decode. Basically, it's looking for value which can be things like a string, or a number, or an IP address. Each kind of value has an encoded type which should be in the lower 5 bits of 0x40. A value of zero is undefined for SNMP v1. You could try SNMP v2 against these devices and see if that fixes the problem.

I've attached a patch to pysnmp to allow this response from an SNMP client. Give it a try:

   $ cd $ZENHOME/lib/python/pysnmp
   $ patch -p0 < /the/patch/attached/in/this/mail

Be sure to restart Zope after patching.

-Eric

You could try SNMP v2 by changing the SNMP

Juan Pedro Escalona Rueda wrote:
hello!

I have a problem collecting data. I explain... I have some vserver's
that are monitorized by Zenoss. All Machines are Gentoo. When i collect
information appears the next error:

Collection Log
Time    Level   Module  Message
2006-08-02 10:18:30     INFO    zen.ZenModeler  loading collector plugins
from:/usr/local/zenoss/Products/DataCollector/plugins
2006-08-02 10:18:30     WARNING         zen.ZenModeler  no cmd plugins found 
for XY
2006-08-02 10:18:30     INFO    zen.ZenModeler  snmp collection device XY
2006-08-02 10:18:30     INFO    zen.ZenModeler  plugins:
zenoss.snmp.HRFileSystemMap, zenoss.snmp.InterfaceMap,
zenoss.snmp.HRSWInstalledMap, zenoss.snmp.DellDeviceMap,
zenoss.snmp.DeviceMap, zenoss.snmp.DellCPUMap, zenoss.snmp.DellPCIMap,
zenoss.snmp.RouteMap, zenoss.snmp.HPCPUMap,
zenoss.snmp.InformantHardDiskMap, zenoss.snmp.IpServiceMap,
zenoss.snmp.HPDeviceMap
2006-08-02 10:18:30     WARNING         twsnmp.protocol         Bad response 
from
('xxxxxxxxxxx', 1161):
'[EMAIL PROTECTED]@\x08\xff\xff\xff\xe0\x00\x00\x00\x00'

2006-08-02 10:18:30     WARNING         twsnmp.protocol         Bad response 
from
('xxxxxxxxxx', 1161):
'[EMAIL PROTECTED]@[EMAIL PROTECTED]'

2006-08-02 10:18:30     WARNING         twsnmp.protocol         Bad response 
from
('xxxxxxxxxxx', 1161):
'[EMAIL PROTECTED]'

2006-08-02 10:18:31     WARNING         twsnmp.protocol         Bad response 
from
('xxxxxxxxxxx', 1161):
'0=\x02\x01\x00\x04\x07SNMPnet\xa2/[EMAIL PROTECTED]'

2006-08-02 10:18:33     WARNING         twsnmp.protocol         Bad response 
from
('xxxxxxxxxxx', 1161):
'[EMAIL PROTECTED]@\x08\xff\xff\xff\xe0\x00\x00\x00\x00'

2006-08-02 10:18:33     WARNING         twsnmp.protocol         Bad response 
from
('xxxxxxxxxxx', 1161):
'[EMAIL PROTECTED]@[EMAIL PROTECTED]'

2006-08-02 10:18:33     WARNING         twsnmp.protocol         Bad response 
from
('xxxxxxxxxxx', 1161):
'[EMAIL PROTECTED]'

2006-08-02 10:18:33     WARNING         twsnmp.protocol         Bad response 
from
('xxxxxxxxxxx', 1161):
'0=\x02\x01\x00\x04\x07SNMPnet\xa2/[EMAIL PROTECTED]'

2006-08-02 10:18:35     ERROR   zen.SnmpClient  device XY plugin
zenoss.snmp.InterfaceMap unexpected error: Traceback (most recent call
last): Failure: twisted.internet.defer.TimeoutError: SNMP request timed out
2006-08-02 10:18:35     ERROR   zen.SnmpClient  device XY plugin
zenoss.snmp.RouteMap unexpected error: Traceback (most recent call
last): Failure: twisted.internet.defer.TimeoutError: SNMP request timed out
2006-08-02 10:18:35     ERROR   zen.SnmpClient  device XY plugin
zenoss.snmp.IpServiceMap unexpected error: Traceback (most recent call
last): Failure: twisted.internet.defer.TimeoutError: SNMP request timed out
2006-08-02 10:18:36     INFO    zen.SnmpClient  snmp client finished
collection for XY
2006-08-02 10:18:36     INFO    zen.ApplyDataMap        processing host 
resources
storage device XY

....


Next to try to collect information, no interfaces, no routes and no
ipServices appears in OS.

I check that this error appear only with 64 bits Machine's and reading
log file of net-snmpd appear the next error: snmpd[20117]: send
response: Error building ASN.1 representation (build int size 4: s/b 8).

x86 arch don't have problems.

I read that there are a patch for net-snmp for 64 bits machines for
CentOS... (http://bugs.centos.org/view.php?id=997) but i try it and it
doesn't work. Only delete de error message of log file but no appear
interfaces, routes and ipServices in OS.

Some idea? It's problem of VServer? It's problem of Net-SNMP and 64 bits
machines?

Regards!

Juan Pedro Escalona Rueda wrote:
Hello again!

snmpwalk command works well, i tried it yet. Server is HP, so
zPropertiers may not modify.

I discover another thing important, i try to collect information of
another machine (linux one) or another device that i had recollected
yet, but appears the same error.

so... it's stranger but i'll try to reinstall and try again!

thaks!

Schuran, Sven wrote:
Hi,
make sure windows system is reachable with snmp. check with snmpwalk -p <snmp_secret> -v 1or2c <IpOfWinSystem>. Have you installed Informat SNMP on the Windows box? If the windows system is no HP or DELL, please add HP|DELL to zProperties->zCollectorIgnorePlugins.

Sven
________________________________

Von: Juan Pedro Escalona Rueda [mailto:[EMAIL PROTECTED] Gesendet: Dienstag, 1. August 2006 09:57
An: General discussion of using zenoss system
Betreff: [zenoss-users] Collecting Data Fails


When i try to collect data from a Windows Machine (Windows 2003 Server) it's 
fails. It's appears into web page when i collect information of a device...
Zenoss is installed into Gentoo  Linux 2006.0. Version of Zenoss is 0.22.0.

Message Error is :

Traceback (most recent call last): File "/usr/local/zenoss/Products/DataCollector/ApplyDataMap.py", line 48, in 
processClient datamaps = plugin.process(device, results, log) File 
"/usr/local/zenoss/Products/DataCollector/plugins/zenoss/snmp/HRSWRunMap.py", line 44, in process filters = 
device.getDmdRoot("Processes").getProcFilters() File "/usr/local/zenoss/Products/ZenModel/ZenModelBase.py", 
line 190, in getDmdRoot return dmd._getOb(name) File "/usr/local/zenoss/lib/python/OFS/ObjectManager.py", line 261, in 
_getOb raise AttributeError, id AttributeError: Processes

Note that Zenoss try to collect the information and later don't save changes.

Regards!

diff -r -u pysnmp/proto/rfc1155.py 
zenoss/install/lib/python/pysnmp/proto/rfc1155.py
--- pysnmp/proto/rfc1155.py     2006-06-26 07:59:28.000000000 -0400
+++ /home/ecn/work/zenoss/install/lib/python/pysnmp/proto/rfc1155.py    
2006-08-02 09:44:25.000000000 -0400
@@ -167,8 +167,12 @@
 class ApplicationSyntax(Choice):
     """Constructed objects
     """
-    choiceNames = [ 'address', 'counter', 'gauge', 'ticks', 'arbitrary' ]
-    choiceComponents = [ NetworkAddress, Counter, Gauge, TimeTicks, Opaque ]
+    class Bug(Opaque):
+        """Some SNMP agents send us an application object with tagId = 0x0"""
+        tagId = 0x00
+
+    choiceNames = [ 'address', 'counter', 'gauge', 'ticks', 'arbitrary', 'Bug' 
]
+    choiceComponents = [ NetworkAddress, Counter, Gauge, TimeTicks, Opaque, 
Bug ]
 
 class ObjectSyntax(Choice):
     """Syntax of objects in MIB
_______________________________________________
zenoss-users mailing list
[email protected]
http://lists.zenoss.org/mailman/listinfo/zenoss-users

Reply via email to