NetXMS Support Forum

Russian Support => Общие вопросы => Topic started by: Vitaly S. on December 04, 2013, 09:27:18 AM

Title: Запись значения внутри DCI, не каждый интервал проверки
Post by: Vitaly S. on December 04, 2013, 09:27:18 AM
Добрый день, вдохновившись статьёй на хабре, решился поставить NetXMS для мониторинга, и пытаюсь активно его настраивать.
Возник вопрос.
Есть нода - принтер хочу контролировать момент, когда был заменён картридж и сколько он прошёл листов по счётчику.
В целом я придумал как это сделать, я беру дельту по количеству тонера в картридже и если она отрицательная, то из скрипта трансформации делаю snmpget к счётчику принтера и пишу в значение DCI значение счётчика, иначе 0.
Но мне не нравится что таблица значений постоянно заполняется нулями.
А теперь сам вопрос. Можно ли сделать так, что-бы значение записывалось не каждый интервал проверки, а только тогда, когда оно не равно нулю?
Title: Re: Запись значения внутри DCI, не каждый интервал проверки
Post by: Victor Kirhenshtein on December 04, 2013, 10:17:19 AM
С неравными интервалами могут быть только push параметры, но тогда придется сбор данных выносить во внешний скрипт. Можно сделать по другому - в DCI хранить кол-во тонера, и поставить threshold на условие diff with previous value > 0 - тогда он сработает когда кол-во тонера вырастет, т.е. картридж был заменен. По событию в этот момент можно через SNMP получить кол-во страниц (как сейчас сделано в transformation script), и использовать его в аларме и/или оповещениях. Дополнительный бонус - можно вывести на график текущий уровень тонера.
Title: Re: Запись значения внутри DCI, не каждый интервал проверки
Post by: Vitaly S. on December 04, 2013, 10:39:00 AM
Спасибо, Виктор :-)
уровень тонера у каждого принтера уже рисуется на дашборде красивым Gauge, так что тут всё прекрасно, а хотелось бы статистику без лишних пустых значений. Но всё равно спасибо за быстрый ответ, а на счёт Push я подумаю, вдруг что-нибудь интересное придумаю, пока фантазия туда не добралась.