I have now modified $ZENHOME/Products/ZenModel/IpService.py as follows:
[img]
def monitored(self):
"""Return monitored state of ipservice.
If service only listens on 127.0.0.1 return false.
"""
if self.cantMonitor(): return False
return super(IpService, self).monitored()
def cantMonitor(self):
"""
Return true if IpService only listens on 127.0.0.1, or if it is a UDP
service.
"""
# return self.protocol == 'udp' \
# or ( len(self.ipaddresses) == 1
# and "127.0.0.1" in self.ipaddresses )
return \
( len(self.ipaddresses) == 1
and "127.0.0.1" in self.ipaddresses )
[/img]
You need to recycle zenhub, zenstatus and zopectl (zopectl because the skins
file that displays the services calls cantMonitor).
Now it is possible to apparently monitor udp ports but.....
Whenever a device with a monitored udp port is remodeled, the udp service
monitoring gets lost, even if the service is locked against deletion.
My service shows with a green status - oh joy! It also shows with a green
status when the udp service is down - oh sadness!
So what actually seems to get called by the ZenStatus damon (every minute by
default) is ZenTcpClient which uses a twisted test against a TCP - repeat TCP -
port, even if you also have UDP ports configured.
Finally, resort to RTFM - the 2.4 Administrators Guide which says on page 38
"Zenoss monitors only TCP ports". So why the &^*&^&%£! do we have all this
UDP service definition ability???? Some things only use UDP - like SNMP for
starters; DNS also uses UDP as does syslog.
Any ideas how we can really monitor UDP ports?
Cheers,
Jane
-------------------- m2f --------------------
Read this topic online here:
http://forums.zenoss.com/viewtopic.php?p=36730#36730
-------------------- m2f --------------------
_______________________________________________
zenoss-users mailing list
[email protected]
http://lists.zenoss.org/mailman/listinfo/zenoss-users