сценарии преобразования - непонятно как работает

Started by Laguna_x, December 12, 2015, 09:47:56 PM

Previous topic - Next topic

Laguna_x

похоже баг в тесте сценариве:
в infrastructure service создал узел; в настройках метрики создал пару снмп с оидами.
зашел во внутренний параметр (Status) во вкладку сценариев преобразования. Сначала пробовал свои эксперименты, но потом решил попробовать банальное:

sub main(wer,wert)
{

return wert;
}


жму кнопку Test, ввожу какой-нибудь текст/цифры/хлам. жму "Выполнить".... несколько раз. В итоге возвращается значение через раз а-то и два раза. Иногда нажимаю по несколько раз чтоб увидеть в результате то что ввёл.

Возможно, что вывод идет раньше чем выполняется скрипт.

2) Есть ли возможно для DCI контейнера сделать преобразование? в ноде вставил преобразование, а на карте контейнер показывает непреобразованное значение для параметра, да и в последних значениях тоже стоит непреобразованное.

kozlov_ao

Тестирование скрипта выполняется достаточно четко (я не замечал проблем). Я не очень понимаю, что Вы хотите добиться таким скриптом?

Также, конструкция sub main() уже устарела и не требуется ее использование достаточно давно..

Laguna_x

ну к этому скрипту я уже пришел в ходе ряда тестов. У меня постоянно показывает либо (null) либо изредка при этом скрипте вываливается указанное значение.

Вопрос в другом, со скриптам я только начал работать в хмсе, у меня почему-то скрипт не изменяет значение для DCI. Где косяк?

kozlov_ao

В настройках метрики, в скрипте, "Шаг 1" выставь как "Нет (сохранить оригинальное значение)".

Laguna_x

не помогло. всеравно в созданном DCI Conteiner показывает число вместо замененнного текста

kozlov_ao

Стоп....
А вы преобразование делаете для стандартного статуса?? Зачем? Плюс оно все равно не верное.

Какова конечная цель?

Laguna_x

для стандартного. или для стандартного преобразование не работает?
я вообще функционал исследую. Интересно тогда зачем стандартный статус (который так я понял вычисляется на основании всех параметров, для которых установлено "Вычислять статус"), если он неверный в итоге :).
Конечная цель - вместо числа чтоб текст писался на карте и в последних значениях (last values).

kozlov_ao

Сам статус вычисляется правильно.
Скрипт у вас не правильный.
Значения у стандартного статуса: 0-4 (0-normal, 4-critical). Если судить по Вашему скрипту, то нормальное состояние ноды (когда возвращает 0), у Вас будет интерпретироваться как "Bad data".

Laguna_x

скрипт я уже с форума пробовать начал, ибо свои тоже не выдавали ничего. вопрос не в том, какой текст выдаст, а в том что он не изменяет значения на текст. Значения поменять не долго.

kozlov_ao

Если честно, я не до конца понимаю, в чем проблема...
Ради интереса, попробовал сделать у себя. Результат в скринах.

Laguna_x

странно, похоже преобразование применяется только при смене статуса (не зависимо производился опрос или нет)?
с теми же настройками статус пишет "0", при том что устройство так и не появлялось после создания скрипта; хотя полинг проводил несколько раз.

Подозреваю что только когда статус изменяет своё значение на иное - только тогда применяется преобразование, испытаю скорее всего после НГ. :o
с наступающим всех.  ;D