The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"zabbix lld, отладка"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Открытые системы на сервере (Мониторинг, логи / Linux)
Изначальное сообщение [ Отслеживать ]

"zabbix lld, отладка"  +/
Сообщение от anonymous (??) on 18-Ноя-13, 20:50 
Доброго времени суток!
Собственно вопрос, как заставить zabbix применять изменения в правилах lld (заданных в шаблонах) на хостах, к которым данный шаблон и правило относятся, мгновенно, не дожидаясь обновления правила? Порой очень вымораживает ожидание обновления, когда после него выясняется, что что-то указал неправильно.
И в принципе, поделитесь опытом, где искать данные для отладки lld? Допустим, само правило обнаружения в шаблоне задано верно; но прототип элементов данных с какой-то ошибкой. В результате, сами item'ы для узла не создаются, и становится непонятно, где ошибка - в правиле обнаружения или в прототипах item'ов? В логах zabbix_server нет, в веб-интерфейсе тоже никаких подсказок, где накосячил - как вы отлаживаете свои lld правила?
Спасибо!
Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "zabbix lld, отладка"  +/
Сообщение от Andrey Mitrofanov on 18-Ноя-13, 21:17 
> Доброго времени суток!
> Собственно вопрос, как заставить zabbix применять изменения в правилах lld (заданных в
> шаблонах) на хостах, к которым данный шаблон и правило относятся, мгновенно,
> не дожидаясь обновления правила? Порой очень вымораживает ожидание обновления, когда после

Интервал discover-скрипта поставь поменьше. 30с, 1мин, например. На время отладки-разработки. Потом - обратно "обычные" 5-10минут (или сколько там).

Если кривых элементов насоздавал - их не удалить, пока не истекут-устареют. Если совсем надо-надо почистить, я весь хост с историей грохаю (или отключаю шаблон с чисткой). Этож ведь должен быть _девелоперский хост.

> И в принципе, поделитесь опытом, где искать данные для отладки lld? Допустим,
> само правило обнаружения в шаблоне задано верно; но прототип элементов данных
> с какой-то ошибкой. В результате, сами item'ы для узла не создаются,
> и становится непонятно, где ошибка - в правиле обнаружения или в
> прототипах item'ов?

Если json-ответ от скрипта распарсился и сопоставился - айтемы создадутся. Если в их [lld] прототипах ошибки, то discovery айтемы создадутся, но когда и если посчитаются с ошибкой, они переключатся в Not Supported и ошибку будет видно в web-ui.

Если не создаётся - думать, где в скрипте или его json-выводе ошибся.

> В логах zabbix_server нет, в веб-интерфейсе тоже никаких подсказок,
> где накосячил - как вы отлаживаете свои lld правила?

Усилием воли. :S

Можно руками пустить тот же скрипт просто из ком строки и смореть на тот json до посине^Wозарения.

Можно отладочных принтов, на stderr!, повставлять: их вывод будет в том самом zabbix_server.log. (Совет: название скрипта писать в каждой отл.строке, даже со временем, чтобы было по чему искать.)

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

2. "zabbix lld, отладка"  +/
Сообщение от anonymous (??) on 18-Ноя-13, 22:09 
> Интервал discover-скрипта поставь поменьше. 30с, 1мин, например. На время отладки-разработки.
> Потом - обратно "обычные" 5-10минут (или сколько там).

Ясно, в принципе, я так пробовал, только почему-то отрабатывало все равно не через 30 секунд, что я поставил. Думал, может где-то проглядел кнопку вроде "Применить снова прям сейчас". И хосты удалять из шаблона/засовывать снова пробовал, деактивировать/активировать тоже, не помогало. И ошибок нигде нет - мистика просто.

> Если кривых элементов насоздавал - их не удалить, пока не истекут-устареют. Если
> совсем надо-надо почистить, я весь хост с историей грохаю (или отключаю
> шаблон с чисткой). Этож ведь должен быть _девелоперский хост.

Хост - будущий "продакшн" в доработке, т.е. его пока никто не смотрит, по сути.

> Если json-ответ от скрипта распарсился и сопоставился - айтемы создадутся. Если в
> их [lld] прототипах ошибки, то discovery айтемы создадутся, но когда и
> если посчитаются с ошибкой, они переключатся в Not Supported и ошибку
> будет видно в web-ui.
> Если не создаётся - думать, где в скрипте или его json-выводе ошибся.

А со стандартными проверками, например, SNMP, как быть? Со внешней проверкой да, я себе и сам могу лог писать куда-нибудь в /tmp, а как отлаживать, к примеру, ошибки в макросах, регулярках (которые в заббиксе почему-то только ERE, к сожалению), они же нигде не пишутся...

> Можно отладочных принтов, на stderr!, повставлять: их вывод будет в том самом
> zabbix_server.log. (Совет: название скрипта писать в каждой отл.строке, даже со временем,
> чтобы было по чему искать.)

За совет спасибо, как перейду к следующей части - внешним проверкам, обязательно воспользуюсь.

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

4. "zabbix lld, отладка"  +/
Сообщение от Andrey Mitrofanov on 18-Ноя-13, 23:04 
> я так пробовал, только почему-то отрабатывало все равно не через 30 секунд,

1/ Поставить отл.печать о том, что Zb таки _вызвал скрипт. В этом тоже надо убедиться.

2/ Скобки все _как _надо расставил? Вот :D образец:

{"data":[{"{#PORT}":"1"},{"{#PORT}":"2"}]}

>> Если json-ответ от скрипта распарсился и сопоставился - айтемы создадутся. Если в
>> их [lld] прототипах ошибки, то discovery айтемы создадутся, но когда и
>> если посчитаются с ошибкой, они переключатся в Not Supported и ошибку
>> будет видно в web-ui.

В конфигурации айтемов хоста справа - зелёная галочка. Если айтем перешёл в Not Sup. [по ошибке~], галоска будет _красной_ и при наведении на неё мыши будет показано сообщение об ошибке (иногда невразумительное).

>> Если не создаётся - думать, где в скрипте или его json-выводе ошибся.
> А со стандартными проверками, например, SNMP, как быть? Со внешней проверкой да,

В части отлад.печати - туго, а в части красной галочки - так же. Только с snmp afair невразумительной диагностики больше.

+++
Пропись (обрати внимание на разницу Key<=>OID):

Name= Blade #{#BLADE} exists
Key= bladeExists[{#BLADE}]
SNMP OID= bladeExists.{#BLADE}

> я себе и сам могу лог писать куда-нибудь в /tmp, а
> как отлаживать, к примеру, ошибки в макросах, регулярках (которые в заббиксе
> почему-то только ERE, к сожалению), они же нигде не пишутся...

:/ Много думать. Или не пользоваться.

Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

6. "zabbix lld, отладка"  +/
Сообщение от anonymous (??) on 19-Ноя-13, 09:17 
Спасибо за ответы! Стало понятнее и большая часть уже заработала.
Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

3. "zabbix lld, отладка"  +/
Сообщение от anonymous (??) on 18-Ноя-13, 22:13 
И небольшое дополнение: почему-то если написать в discovery rule в SNMP OID поле, например:
IF-MIB::ifName - не подхватывает, а просто ifName - подхватывает, и ведь молчит и нигде не ругается, зараза! Полчаса наверное убил, пока понял...
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

5. "zabbix lld, отладка"  +/
Сообщение от Andrey Mitrofanov on 18-Ноя-13, 23:06 
> И небольшое дополнение: почему-то если написать в discovery rule в SNMP OID
> поле, например:
> IF-MIB::ifName - не подхватывает, а просто ifName - подхватывает, и ведь молчит
> и нигде не ругается, зараза! Полчаса наверное убил, пока понял...

А-а-а, у тебя SNMP на входе/источник discovery. Не въехал сразу.

Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру