alexfriman Posted August 16, 2017 (edited) Добрый день, коллеги! Работаю по спутниковым каналам связи используя модемы Comtech 570L, имеется необходимость постоянно мониторить уровень сигнала на приёме. Данные снимаю по SNMP и всё вроде бы отлично и всё устраивает, но когда уровень сигнала на канале падает меньше 4-5 дб по SNMP прилетает значение 99 О_О (приложил график, не очень приятно) ищу способы от него избавиться.. как можно подменить или удалить полученное значение? Подобное встречал на датчиках температуры, там прилетало значение +85 градусов когда они часто опрашивались:) Спасибо. Edited August 16, 2017 by alexfriman Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
s.lobanov Posted August 16, 2017 Посмотрите в сторону calculated items. Только придётся придумать формулу под ваш случай, там не очень гибко... Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
alexfriman Posted August 16, 2017 Посмотрите в сторону calculated items. Только придётся придумать формулу под ваш случай, там не очень гибко... Доброго времени суток, спасибо за столь скорый ответ. На самом деле с этого миба приходит целое число от 1...999, после этого методом множителя 0.1 я получаю нужное число... Так вот в момент когда модем переходит в состояние "Failure" прилетает число 999, уже голову изломал какую формулу сделать для вычета лишних значений. Нет ли возможности отклонения значения чтобы заббикс значение 999 не записывал в базу? Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
polmax Posted August 16, 2017 (edited) Может глянуть в сторону: Преобразование значений, создать своё в котором 999 -> 0. Сам не пробовал. Edited August 16, 2017 by polmax Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
alexfriman Posted August 17, 2017 Может глянуть в сторону: Преобразование значений, создать своё в котором 999 -> 0. Сам не пробовал. Попробовал прикрутить, посмотрю при следующем ухудшении сигнала.. по результату отпишусь. Спасибо. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
alexfriman Posted August 20, 2017 (edited) polmax,s.lobanov В общем дождался я хорошечного дождичка, к сожалению "Преобразование значений" не помогло. Есть еще варианты? Edited August 20, 2017 by alexfriman Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
zhenya` Posted August 20, 2017 Внешний скрипт Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
man781 Posted August 25, 2017 Вышла новая версия Zabbix. Там реализована эта фича красиво Препроцесинг Помните тот случай, когда оборудование вендора XYZ отдает температуру текстом «25 С», а нам нужно число(уж очень любим графики и триггеры)? Теперь не нужно лишних движений, в препроцессинге мы просто отрезаем лишнее, используя различные функции препроцессинга: начиная от простых Trim, Regular Expressions и заканчивая выделением нужных данных из JSON, XML используя JSON Path и XPath соответственно https://habrahabr.ru/company/zabbix/blog/336084/ Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
alexfriman Posted August 25, 2017 Вышла новая версия Zabbix. Там реализована эта фича красиво Спасибо за информацию, буду планировать update. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
alexfriman Posted October 10, 2019 Вопрос решился регулярным выражение в препроцессинге элемента данных: Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
sirmax Posted October 22, 2019 Там есть встроенный жабаскрипт им удобнее я так обрабатываю jmx метрики которые в интеджер не помещаются что то типа If (value>1000000) {return value/1000;} Сорри с телефона не могу точный пример дать Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...