Aha, excellent, lots of choices!
Thanks Erik & Marc for the pointers, I reckon with a bit of python study
I can get my solution working, and we can all be woken up in the middle
of the *correct* nights ;)
Just need to decide which method to use, but I think going the fully
python route appeals, 'cos, well, I feel like learning another language :)
Chris
Erik A. Dahl wrote:
Also you don't have to write this in python. You can use XML-RPC or
REST to modify objects. Here is the URL to an alert rule.
http://tilde:8080/zport/dmd/ZenUsers/edahl/alertrule
You can set its enable state using REST like this
http://localhost:8080/zport/dmd/ZenUsers/edahl/alertrule/manage_changeProperties?enabled=True
You can do the same thing from XML-RPC which I will leave as an
exercise to the reader. :)
-EAD
On Jan 30, 2007, at 2:25 PM, Marc Irlandez wrote:
Chris,
Here are a some pointers to get you started:
You'll probably be creating some new ActionRule objects. Look in
$ZENHOME/Products/ZenEvents/ActionRule.py for available methods. You
could use the manage_addActionRule to create a bunch of rules then
set the enabled flag depending on situation. Or you could create
similar rules and set them to different users depending on situation.
To help with development, run zendmd, which is the zenoss dmd command
shell.
You can call these very same methods in the zendmd. To retrieve some
of the objects you'll be using in the zendmd, use these commands:
user = zport.dmd.ZenUsers.MY_USERNAME
alertingRule = user.MY_ALERTING_RULE
To enable/disable your alerting rule:
alertingRule.enabled=True
Hope this helps.
Regards,
Marc Irlandez
On Jan 30, 2007, at 1:31 PM, Chris Beauchamp wrote:
Duncan McGreggor wrote:
On Jan 25, 2007, at 3:26 PM, Chris Beauchamp wrote:
Hi Marc,
hmmm - it has possibilities, however that's 36 rules in theory with 6
people, and the trouble is that its quite inflexible - you know how
these things are in real life: someone's on holiday, so they need
to not
get any alerts, someone else has swapped, so their priorities must
change, but not in the normal schedule.
I'm really thinking of a script with a list of names, and you just
supply the order of people on the command line, and it changes the
delays to match that order.
I'm just gonna jump in here quickly :-)
The answer is, yes -- this is very possible. You can write pretty much
any python code you want to manipulate the data in Zenoss. This is one
of (in my opinion) Zenoss' killer features.
Indeed, likewise, as I'm learning :) I do love that all the objects are
exposed and can be manipulated easily from scripts etc. Nothing's
hidden
away.
But the thing is, this is *custom* code you want, for a special
workflow
you want to provide. It will depend on the format of your config file
(if that's where you put your users and escalation data) and how you
define data such as escalation level, priority, etc. You can map
all of
that to what Marc was talking about, thanks to the power of python and
Zenoss.
I absolutely agree - I'm completely expecting this to be a custom bit,
which I should hopefully be able to write - I don't expect it to become
part of Zenoss as a whole (though I suppose it might) - I'm just a bit
of a python newbie (I can write perl 'til the cows come home), so after
some pointers to get me started.
Many thanks
Chris
_______________________________________________
zenoss-users mailing list
[email protected]
http://lists.zenoss.org/mailman/listinfo/zenoss-users
_______________________________________________
zenoss-users mailing list
[email protected]
http://lists.zenoss.org/mailman/listinfo/zenoss-users
_______________________________________________
zenoss-users mailing list
[email protected]
http://lists.zenoss.org/mailman/listinfo/zenoss-users
_______________________________________________
zenoss-users mailing list
[email protected]
http://lists.zenoss.org/mailman/listinfo/zenoss-users