Uptime на всех устройствах мониторил по SNMP. Преобразовывался в текстовый вид.
Transformation стоял такой:
SecondsToUptime($1/100)
Стал писать ошибку
Error 19 in line 1: Function or operation argument is not a whole number
Видимо что-то поменялось в языке. По документации SecondsToUptime принимает целый агрумент, так что можно округлить:
SecondsToUptime(round($1/100))
Quote from: Filipp Sudanov on February 05, 2021, 10:12:22 PM
Видимо что-то поменялось в языке. По документации SecondsToUptime принимает целый агрумент, так что можно округлить:
SecondsToUptime(round($1/100))
неа, ошибка осталась. я так уже пробовал
У меня не получилось повторить. Какая точно версия? Можете проверить на самой свежей 3.7?
Проявляется только в трансформационном скрипте, или если на ноде сделать Execute Server Script, то там тоже? Что именно в $1?
netxms-server-3.7.145-x64.exe
Снятие данных по SNMP - .1.3.6.1.2.1.1.3.0
Value - 2108117300
Raw - 2108117300
С transformation SecondsToUptime($1) - 24399 days 15:45
С transformation SecondsToUptime($1/100) - ERROR
С transformation SecondsToUptime($1/100) через Test и ручным вводом 600 - смотреть картинку + ошибка "Error 19 in line 1: Function or operation argument is not a whole number"
Что любопытно.
Если transformation - "$1" - выходные данные Uptime = 2108193800
Если transformation - "$1/100" - выходные данные Uptime = 21081979.000000
Откуда получается не целое?
Это баг в NXSL интерпретаторе, уже починили. В следующем релизе будет работать.
попробовал обновиться на 145 версию, глюк остался, откатил
Попробуйте 3.8, она вышла только что
после обновы на *****.8.120 проблема ушла