NetXMS Support Forum

Russian Support => Идеи и предложения по функциональности NetXMS => Topic started by: andrey--k on March 25, 2014, 11:46:21 AM

Title: Отключение агентов для новых нод
Post by: andrey--k on March 25, 2014, 11:46:21 AM
У меня в сети не используются агенты.
Можно ли добавить опцию для отключения агентов для всех новых нод?
Title: Re: Отключение агентов для новых нод
Post by: Victor Kirhenshtein on March 26, 2014, 12:56:33 AM
С добавлением метода enableAgent можно повесить скрипт на SYS_NODE_ADDED и отключать агентов с его помощью.
Title: Re: Отключение агентов для новых нод
Post by: andrey--k on March 26, 2014, 12:01:47 PM
Столкнулся с проблемой передачи параметра в скрипт.

Если в Actions Configuration:
DisableAgentOnEvent - запускает скрипт без параметров. Действий не происходит.
DisableAgentOnEvent(%I) - Не найден скрипт
Node added
[26-Mar-2014 11:22:15.913] [DEBUG] *actions* Executing action 1 (DisableAgentNodeAdded) of type NXSL SCRIPT
[26-Mar-2014 11:22:15.913] [DEBUG] *actions* Executing NXSL script "DisableAgentOnEvent(8665)"
[26-Mar-2014 11:22:15.913] [DEBUG] ExecuteActionScript(): Cannot find script DisableAgentOnEvent(8665)

Из консоли тоже ошибка:

$ nxadm -c "exec DisableAgentOnEvent(8647)"
ERROR: Script "DisableAgentOnEvent(8647)" not found


DisableAgentOnEvent %I - Не найден скрипт

[26-Mar-2014 11:17:15.361] [DEBUG] *actions* Executing action 1 (DisableAgentNodeAdded) of type NXSL SCRIPT
[26-Mar-2014 11:17:15.361] [DEBUG] *actions* Executing NXSL script "DisableAgentOnEvent 8658"
[26-Mar-2014 11:17:15.361] [DEBUG] ExecuteActionScript(): Cannot find script DisableAgentOnEvent 8658

Из консоли - работает

nxadm -c "exec DisableAgentOnEvent 8647"
INFO: Script finished with rc=0


Как правильно привязать скрипт к event?
Title: Re: Отключение агентов для новых нод
Post by: Victor Kirhenshtein on March 26, 2014, 12:13:37 PM
Если скрипт вызван из политики, то у него будут две переменных выставлены - $node и $event. Описания классов здесь: http://wiki.netxms.org/wiki/NXSL:Node (http://wiki.netxms.org/wiki/NXSL:Node) и http://wiki.netxms.org/wiki/NXSL:Event (http://wiki.netxms.org/wiki/NXSL:Event).
Title: Re: Отключение агентов для новых нод
Post by: andrey--k on March 26, 2014, 12:18:46 PM
Спасибо!
Все заработало.
Скрипт:

$node->enableAgent(false);