I have a weird error when click on graphs for all Windows hosts.
pythonThresholdException User-supplied Python expression (here.getTotalBlocks() * .9) for maximum value caused error: ['usedBlocks_usedBlocks']
By default when you assign a host to FileSystem template (in our environment it's always Windows for whatever reason), there is one graph for storage usage utilization. It has a formula in the maximum threshold value which is referenced in the error.
SNMP is working. I've tested usedBlocks OID.
A couple of possible things here...
You say "when you assign a host to FileSystem template"...... - the FileSystem template is a COMPONENT template not a device template, so you should not be binding this template manually - it should bind automatically. If you see FileSystem as a template bound to the device then unbind it. (BTW - what version of Zenoss are you on??).
You have obviously checked the SNMP connectivity to your Windows targets but could you check each of the OIDs that are specified in the FileSystem template. I've seen some Windows SNMP agents that provide some parts of the file system host resources MIB, but not all the expected data.
Change the threshold to: ((here.getTotalBlocks() or 1) * .9). This will advert the 'Python experssion' error.
In the /Perf/FileSystem transform add a check for if getTotalBlocks() is None or < some number and to rewrite the event in such case to tell you that the TotalBlocks has not been modeled for that device. This will let you know what devices need their filesystem information remodled/fixed, etc.
Chances are if this value isn't filled its due to a modeler that hasn't run or is malfunctioning.
Thank you for responding guys.
SNMP connectivity does work to this windows box except that it doesnt collect everything. I did the walk and it gave me some info.
I am using 3.2.0 zenoss.
Shane, I've tried modifying that formula but no luck. Error is still there. I've restarted service, deleted RRD files and no luck. Maybe something else needs to be done.
It feels like there is no data being collected for that value so it blows up.
When I do snmpwalk it retuns everything. Interesting fact. By default snmpwalk in zenoss appends "system" at the end of command. It will almost return nothing with that in there. If I do a snmpwalk from console without that "system" entry, it gives me everything.
Also, I do a test on UsedBlocks DataPoints and it returns to me a list of 4 entries.
BTW, I've tried to just use one still no luck.
Are you talking about just modeling the device?
I am having hard time logging into the console with zenoss username. I believe it doesnt have password by default.
If you need to see the output of model the device through the gui, here it is:
2011-12-12 11:13:58,728 INFO zen.ZenModeler: Connected to ZenHub
2011-12-12 11:13:58,862 INFO zen.ZenModeler: Collecting for device 10.x.x.x
2011-12-12 11:13:58,972 INFO zen.ZenModeler: No WMI plugins found for 10.x.x.x
2011-12-12 11:13:58,976 INFO zen.ZenModeler: No Python plugins found for 10.x.x.x
2011-12-12 11:13:58,981 INFO zen.ZenModeler: No command plugins found for 10.x.x.x
2011-12-12 11:13:58,992 INFO zen.ZenModeler: SNMP collection device 10.x.x.x
2011-12-12 11:13:58,992 INFO zen.ZenModeler: plugins: zenoss.snmp.NewDeviceMap, zenoss.snmp.DeviceMap, zenoss.snmp.InterfaceMap, zenoss.snmp.RouteMap, zenoss.snmp.IpServiceMap, zenoss.snmp.HRFileSystemMap, zenoss.snmp.HRSWInstalledMap, zenoss.snmp.HRSWRunMap, zenoss.snmp.InformantHardDiskMap
2011-12-12 11:13:59,065 INFO zen.ZenModeler: No portscan plugins found for 10.x.x.x
2011-12-12 11:14:03,061 INFO zen.SnmpClient: Device timed out: SNMP info for 10.x.x.x at 10.x.x.x:161 timeout: 2.5 tries: 2 version: v2c community: xxxxxx
2011-12-12 11:14:03,061 INFO zen.SnmpClient: snmp client finished collection for 10.x.x.x
2011-12-12 11:14:03,061 WARNING zen.SnmpClient: Device 10.x.x.x timed out: are your SNMP settings correct?
2011-12-12 11:14:03,062 INFO zen.ZenModeler: No change in configuration detected
2011-12-12 11:14:03,062 INFO zen.ZenModeler: Scan time: 4.20 seconds
2011-12-12 11:14:03,069 INFO zen.ZenModeler: Daemon ZenModeler shutting down
snmpwalk works just fine.
Here is the issue. The community string has $ sign. When I run snmpwalk in console I use \$
In properties of object in zenoss I had \ as well. So I have removed it and modeler works fine. Here is the output:
2011-12-12 11:48:13,901 INFO zen.ZenModeler: Connecting to localhost:8789
2011-12-12 11:48:13,916 INFO zen.ZenModeler: Connected to ZenHub
2011-12-12 11:48:13,985 INFO zen.ZenModeler: Collecting for device 10.x.x.x
2011-12-12 11:48:14,132 INFO zen.ZenModeler: No WMI plugins found for 10.x.x.x
2011-12-12 11:48:14,137 INFO zen.ZenModeler: No Python plugins found for 10.x.x.x
2011-12-12 11:48:14,142 INFO zen.ZenModeler: No command plugins found for 10.x.x.x
2011-12-12 11:48:14,153 INFO zen.ZenModeler: SNMP collection device 10.x.x.x
2011-12-12 11:48:14,154 INFO zen.ZenModeler: plugins: zenoss.snmp.NewDeviceMap, zenoss.snmp.DeviceMap, zenoss.snmp.InterfaceMap, zenoss.snmp.RouteMap, zenoss.snmp.IpServiceMap, zenoss.snmp.HRFileSystemMap, zenoss.snmp.HRSWInstalledMap, zenoss.snmp.HRSWRunMap, zenoss.snmp.InformantHardDiskMap
2011-12-12 11:48:14,302 INFO zen.ZenModeler: No portscan plugins found for 10.x.x.x
2011-12-12 11:48:14,675 INFO zen.SnmpClient: snmp client finished collection for 10.x.x.x
2011-12-12 11:48:14,676 INFO zen.ZenModeler: Processing zenoss.snmp.NewDeviceMap for device 10.x.x.x
2011-12-12 11:48:14,677 INFO zen.ZenModeler: processing zenoss.snmp.DeviceMap for device 10.x.x.x
2011-12-12 11:48:14,678 INFO zen.ZenModeler: Modeler zenoss.snmp.InterfaceMap processing data for device 10.x.x.x
2011-12-12 11:48:14,682 INFO zen.ZenModeler: processing zenoss.snmp.RouteMap for device 10.x.x.x
2011-12-12 11:48:14,684 INFO zen.ZenModeler: processing zenoss.snmp.IpServiceMap for device 10.x.x.x
2011-12-12 11:48:14,685 INFO zen.ZenModeler: Modeler zenoss.snmp.HRFileSystemMap processing data for device 10.x.x.x
2011-12-12 11:48:14,686 INFO zen.ZenModeler: Skipping D:\. 0 total blocks.
2011-12-12 11:48:14,687 INFO zen.ZenModeler: Skipping Physical Memory (ram) as it matches zFileSystemMapIgnoreTypes.
2011-12-12 11:48:14,688 INFO zen.ZenModeler: processing zenoss.snmp.HRSWInstalledMap for device 10.x.x.x
2011-12-12 11:48:14,690 INFO zen.ZenModeler: Processing zenoss.snmp.HRSWRunMap for device 10.x.x.x
2011-12-12 11:48:14,693 INFO zen.ZenModeler: processing zenoss.snmp.InformantHardDiskMap for device 10.x.x.x
2011-12-12 11:48:15,204 INFO zen.ZenModeler: Changes in configuration applied
2011-12-12 11:48:15,256 INFO zen.ZenModeler: Scan time: 1.27 seconds
2011-12-12 11:48:15,262 INFO zen.ZenModeler: Daemon ZenModeler shutting down
I dont have an option of changing community string.
So even if I specify escape character (ie \)?
I dont have an option of changing it. That's the problem.
What about SNMP v3? Do you know how to configure it in windows?
If I use that, then I wont need a community string. User account with pass can be created by me.
I don't think theres a way to make zenperfsnmp handle those characters that's easy to implement. I think you're right, Windows doesn't do v3 OOB. The only real option would be to convert all the templates to zencommand datasources, but, this is easier said than done. Is it really not an option to strip out the $?
That's what happens when you are not in charge of the system. For others $ doesnt cause a problem to have snmp monitoring. For zenoss it does.
I am trying to get another community string created. It seems that Windows can have multiple ones. That hopefully should solve the problem.
Thanks for your help.
Follow Us On Twitter »
||Latest from the Zenoss Blog »||Community||Products||Services||Customers||About Us|
Copyright © 2005-2011 Zenoss, Inc.