Share, , Google Plus, Pinterest,

Print

Posted in:

Zenoss – User-supplied Python expression ((here.speed or 1e9) / 8 * .75) for maximum value caused error

Recently i have set up a Zenoss monitoring server in an Microsoft environment. Best way i have found for monitoring Windows machines is via Windows Remote Management Service and i also wrote a post on this “Add Windows Client to Zenoss Monitoring“.

But in my latest installation and configuration of Zenoss i have stumbled upon a really bizarre error popping up every now and then saying:

Error

Resource: vm-zenoss
Component: zenhub
Event Class: /Status/Update
Status: New
Message: The threshold high utilization in template /zport/dmd/Devices/Server/Microsoft/rrdTemplates/ethernetCsmacd has caused an exception.

and to add on …

component zenhub
dedupid zenhub|User-supplied Python expression ((here.speed or 1e9) / 8 * .75) for maximum value caused error: [bytesReceivedSec_bytesReceivedSec ,="" 'bytessentsec_bytessentsec'=""][/bytesReceivedSec_bytesReceivedSec]

I have googled a bit and found that this problem is related to ZenPacks.zenoss.Microsoft.Windows and to the current interface modeller, which saves the “speed” attribute as a string and this produces an error when the threshold is checked.

The  error was reported to the Zenoss team and supposedly fixed in ZenPacks.zenoss.Microsoft.Windows version 2.0.3 so if you are running ZenPacks.zenoss.Microsoft.Windows prior to this version you might stumble upon this.

User-supplied Python expression ((here.speed or 1e9) / 8 * .75) for maximum value caused error

Workaround

You can either update the ZenPacks.zenoss.Microsoft.Windows to version 2.0.3 or edit a file “modeler/plugins/zenoss/winrm/Interfaces.py”, find the line:

int_om.speed = inter.Speed

and change with:

int_om.speed = int(inter.Speed)

This change fully resolves the issue and you’re good to go!