Обращения из DCI к Script library, передача аттрибутов
-
Какие атрибуты передаются в скрипт?
Мне надо считать в скрипте Description от DCIПросто в DCI в разделе Transformation, скрипт работает, но хотел его запихнуть в библиотеку скриптов
// Description format - (Tunnel '37.203.240.35' active time) transport = CreateSNMPTransport($node); if (transport == null) return -1; // if no SNMP oid = ".1.3.6.1.4.1.9.9.171.1.2.3.1.7"; // where IP addresses search vars = SNMPWalk(transport, oid); //SNMP walk over OID if (vars == null) return -2; // SNMPWalk failed dcidescription = SplitString($dci->description, "'"); // DCI description to array ipsec = dcidescription[1]; // get tunnel IP from DCI description foreach (v: vars) { //look over OID tree if(v->value == ipsec) { //if IPSEC ip found instances = SplitString(v->name, "."); //convert OID to array instance = instances[instances->size - 1]; //get last instance from OID seconds = SNMPGetValue(transport, ".1.3.6.1.4.1.9.9.171.1.2.3.1.16." . instance); //get number of seconds that tunnel was active return SecondsToUptime(seconds / 100); } }
-
$node - объект ноды с которой происходит сбор данных (https://www.netxms.org/documentation/nxsl-latest/#class-node)
$targetObject - объект ноды для которой происходит сбор данных (будет то-же что и $node если у DCI не выставлен source node)В $ARGS (и в $1, $2, ...) будут параметры если в DCI скрипт указан со скобками.
-
@victor said in Обращения из DCI к Script library, передача аттрибутов:
$node - объект ноды с которой происходит сбор данных (https://www.netxms.org/documentation/nxsl-latest/#class-node)
$targetObject - объект ноды для которой происходит сбор данных (будет то-же что и $node если у DCI не выставлен source node)В $ARGS (и в $1, $2, ...) будут параметры если в DCI скрипт указан со скобками.
Честно, не въехал.
Как мне указать скрипт в данном окне DCI, чтобы в скрипте достать потом значение - Tunnel '8.8.8.8' active time
Я понял, что если я вызову скрипт ASA::Test(8.8.8.8), то потом достану как $ARGS[1].
Но мне интересно, как Description DCI получить, если можно
-
Тогда можно оставить использование transformation, просто скрипт заменить на вызов библиотечного скрипта в форме
return script_name::function();В вызванном скрипте будет доступна переменная $dci.
Hello! It looks like you're interested in this conversation, but you don't have an account yet.
Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.
With your input, this post could be even better 💗
Register Login