For manual device dependencies, see FAQ:
docs/DOC-2445#HowdoIcreatearbitrarydependenciesinZenoss
For the routing you should be able to go to the OS tab, and under Routes
use the dropdown to create a IpRoute Entry that points where it should
(I believe ,I haven't done this myself).
--
James Pulver
Information Technology Area Supervisor
LEPP Computer Group
Cornell University
Matthew Kitchin (public) wrote, On 11/20/2009 6:49 PM:
Thanks for the tips. Since we are on a MPLS network, I guess we are out of luck with the automatic discovery. That stinks, but so be it. There isn't a built in way to set manual dependencies, so out of luck thee as well. I have seen several references to posts and wiki entries that I haven't been able to find. It is possible I'm just picking the absolute wrong terms to search for. Can anyone point me towards the sample code to add a manual dependency or the directions for faking routes so we might be able to figure out how to reduce the number of extra alerts we are getting?
Thanks,
Matthew
>
Thanks. For manual dependency, I see this:
if device.id == 'id_of_application_server':
db_server = device.findDevice('id_of_db_server')
if db_server.getPingStatus() > 0:
evt.eventState = 2 # suppressed
If I understand this correctly, I think I would have to put about 220 entries. I have 100 remote sites, with at least 1 server and 1 WAP behind the router. I would have to add a the above logic for every WAP and EVERY server on the ping event class, right?
I don't think you would do this on the ping class, but on other event
classes, though with the 2.4 cascading transforms, you should be able to
do this at the top event transform level...
Sadly, you do need to do this for every dependency.
--
James Pulver
Information Technology Area Supervisor
LEPP Computer Group
Cornell University
Matthew Kitchin (public) wrote, On 11/23/2009 9:37 AM:
Thanks. For manual dependency, I see this:
if device.id == 'id_of_application_server':
db_server = device.findDevice('id_of_db_server')
if db_server.getPingStatus() > 0:
evt.eventState = 2 # suppressed
If I understand this correctly, I think I would have to put about 220 entries. I have 100 remote sites, with at least 1 server and 1 WAP behind the router. I would have to add a the above logic for every WAP and EVERY server on the ping event class, right?
>
It is usually the ping for the server or wap that is generated the false alarm because the router is really what is down. If I wouldn't put it on ping, I'm lost as to where I would put it.
All my devices have a name consistent with their location.
TX252-RTR
TX252SRV
TX252WAP1
ETC...
I don't suppose there a way to use a wild card or something to say if *-RTR is down, ignore devices *SRV, *WAP*, etc?
Thanks again for all the help!
-Matthew
It's python, so any python program should work... so yes, you could use
regex's...
If you're looking to suppress ping alerts, then yes, put it there. I
misunderstood and though you wanted to say, stop event log based events
or snmp is down events once a ping is down was heard from an upstream
device...
--
James Pulver
Information Technology Area Supervisor
LEPP Computer Group
Cornell University
Matthew Kitchin (public) wrote, On 11/23/2009 10:10 AM:
It is usually the ping for the server or wap that is generated the false alarm because the router is really what is down. If I wouldn't put it on ping, I'm lost as to where I would put it.
All my devices have a name consistent with their location.
TX252-RTR
TX252SRV
TX252WAP1
ETC...
I don't suppose there a way to use a wild card or something to say if *-RTR is down, ignore devices *SRV, WAP, etc?
Thanks again for all the help!
-Matthew
>
Thanks! We are done. It is working as I hoped now.
This is what I have under the event Status/Ping.
if device.id.endswith('WAP') or device.id.endswith('SRV'):
rtr = device.id[0:5]+'-rtr-ser'
rtr_server = device.findDevice(rtr)
if rtr_server.getPingStatus() > 0:
evt.eventState = 2 # suppressed
This is what I put on the event Status/SNMP. The second part is because I was still getting SNMP failure alerts even though the device itself was down.
if device.id.endswith('WAP') or device.id.endswith('SRV'):
rtr = device.id[0:5]+'-rtr-ser'
rtr_server = device.findDevice(rtr)
if rtr_server.getPingStatus() > 0:
evt.eventState = 2 # suppressed
if device.getPingStatus() > 0:
evt.eventState = 2 # suppressed
Thanks for the help.
-Matthew
Follow Us On Twitter »
|
Latest from the Zenoss Blog » | Community | Products | Services Resources | Customers Partners | About Us | ||
Copyright © 2005-2011 Zenoss, Inc.
|
||||||||