Quote from: Anth0ny on August 04, 2008, 12:05:06 PM
- Scripts now can be used to form event's message (via %[..] macro)
Mozno sozdat' skript v biblioteke scriptov (Control Panel -> Script Library), i podstavljat' stroku, vozvraschaemuju etimscriptom v teksti soobschenij. Naprimer, delaem script pod nazvaniem TEST:
Code Select
sub main()
{
return "my string";
}
Teper' esli napisat' v tekste naprimer alarma %[TEST], to eto budet zameneno na stroky my string.
Script imeet dostup k dannim tekuschej nodi cherez peremennuju $node, i k parametram obrabativaemogo eventa cherez peremennuju $event.
Takim obrazom mozno naprimer vidavat' perevedennie nazvanija statusov - vmesto %S ispol'zovat' svoj script, naprimer takoj:
Code Select
sub main()
{
switch($event->severity)
{
case 0:
return "Normal";
case 1:
return "Warning";
// i tak dalee, podstavljaja svoi teksti ...
default:
return "error";
}
}
Quote from: Anth0ny on August 04, 2008, 12:05:06 PM
- Scripts in event processing policy now has access to node properties
via $node variable and to event properties via $event variable
Script, kotorij vizivaetsja iz event processing policy, imeet dve opredelennie peremenie - $node i $event, dlja dostupa k atributam nodi i sobitija sootvetstvenno. Eti peremennie soderzat ob'ekti, t.e. dostup k atributam osuschestvljaetsja operaciej ->. Naprimer, esli ja hochu poluchit' imja uzla, mne nado napisat' $node->name.
Quote from: Anth0ny on August 04, 2008, 12:05:06 PM
- Added support of custom object attributes
U kazdogo ob'ekta teper' mozno opredeljat' svoi attributi - cherez zakladku "Custom Attributes" v svojstvah ob'ekta ili programmno cherez API. Znachenija etih attributov mozno potom ispol'zovat' v skriptah i tekstah soobschenij. Naprimer, esli ja opredeljaju attribut responsible_person, to mogo v tekste alarma napisat' skazem tak:
Node down; responsible person is %{responsible_person}
Vmesto %{responsible_person} budet podstavleno tekuschee znachenie attributa responsible_person.
