Jan 13, 2012 8:31 AM
"Monitoring..." control for component?
-
Like (0)
Hello!
I'm developing a ZenPack for monitoring VPN tunnels on FortiGate Firewalls as device compontents and I've run in to a snag.
The modeling works fine and I can monitor the status and other parameters using Device Templates bound to the component class.
However, the control for setting the component as monitored or not monitored is greyed out (I think the property it controls is self.monitor).
I need monitoring to be configurable (as some VPNs are not supposed to be up all the time)
I can't find where in my ZenPack i would need to add code for this to work.
I've been scratching my head with this for a while and searched the forums and documentation for an answer without success.
Would be very thankful if someone could help me with this.
Thanks,
Johan Keskitalo
Novice ZenPack developer
Not sure it applies, but I recall similar issues with process monitoring, might be worth a look: message/62798#62798
Thanks,
I don't think it's the same issue, as the "monitored" column for the components shows "true" for all of them.
I tried adding the following to the info adapter hoping it would help but it didn't change anything:
@property
def monitored(self):
return self._object.monitored()
Johan -
What version of Zenoss are you doing this in? If it is 3.1 then you need to apply a patch to zenoss:
zenpatch 25791 (run this as the zenoss user)
and restart zenoss.
If it's not 3.1, what class did you subclass to create your component?
--Dennis
Thanks for replying Dennis!
I'm using 3.2.1, and setting the monitoring option works on other component types, like interfaces, processes etc.
I subclassed DeviceComponent and ManagedEntity, maybe that's where the issue is? I've looked at the component class Win32DiskDrive in the WMIPerf_Windows ZenPack for example and it's a subclass of HardDisk. Should I use different BaseClass(es) to inherit from?
I found the problem by looking at the zenHttpComponent Zenpack
I needed to add the highlighted (bold anyways) rows below to the javascript file:
ZC.IPSecTunnelPanel = Ext.extend(ZC.ComponentGridPanel, {
constructor: function(config) {
config = Ext.applyIf(config||{}, {
componentType: 'IPSecTunnel',
autoExpandColumn: 'fgVpnTunEntPhase2Name',
fields: [
{name: 'uid'},
{name: 'severity'},
{name: 'fgVpnTunEntPhase2Name'},
{name: 'fgVpnTunEntPhase1Name'},
{name: 'fgVpnTunEntRemGwyIp'},
{name: 'fgVpnTunEntRemGwyPort'},
{name: 'fgVpnTunEntSelectorSrcBeginIp'},
{name: 'fgVpnTunEntSelectorSrcEndIp'},
{name: 'fgVpnTunEntSelectorDstBeginIp'},
{name: 'fgVpnTunEntSelectorDstEndIp'},
{name: 'status'},
{name: 'usesMonitorAttribute'},
{name: 'monitor'},
{name: 'monitored'},
{name: 'locking'}
],
Follow Us On Twitter »
|
Latest from the Zenoss Blog » | Community | Products | Services Resources | Customers Partners | About Us | ||
Copyright © 2005-2011 Zenoss, Inc.
|
||||||||