План
Идея, однако. И даже совместимая с Zabbix 2.0.
Пока что только набросок:
1) Создаём шаблон "Web Monitoring"
2) В шаблоне 1 элемент:
User.actions[{HOSTNAME},{$OS_TYPE}] - это UserParameter, который ссылается на скрипт.
3) В этом же шаблоне 1 триггер для этого элемента, который будет информировать о том что чтото изменилось.
4) Скрипт - вызываемый элементом ищет на локальной машине файлик со списком сайтом, которыя должны хостится на этом узле. Например, пусть хоть так:
/opt/zabbix/webmon.txt
В этом файле можно запостить довольно много инфы относительно логинов, паролей, страниц которые надо мониторить, если например сайт повторяется - значит получаем автоматически 2 шага WEB мониторинга. Файлик довольно таки важный, над ним надо кумекать....
Скрипт должен быть совместим с разными OS. Например, это может разрулить макрос уровня УЗЛА - {$OS_TYPE}.
5) Дальше вызываем API: httptest.get
Проверяем что уже добавлено, и оставляем только то что надо добавить/удалить/обновить
6) В соответствии с необходимым действием вызываем API:
httptest.create
httptest.delete
httptest.update
7) Выдаём результат работы скрипта - целое число с количеством изменений.
Как то так.... не исключено, что план не полный.
Идея, однако. И даже совместимая с Zabbix 2.0.
Пока что только набросок:
1) Создаём шаблон "Web Monitoring"
2) В шаблоне 1 элемент:
Code:
имя - "Update WEB Monitoring" Тип - zabbix agent Ключ - User.actions[webupdate] (например) Тип информации - целое число Данные - десятичные
3) В этом же шаблоне 1 триггер для этого элемента, который будет информировать о том что чтото изменилось.
4) Скрипт - вызываемый элементом ищет на локальной машине файлик со списком сайтом, которыя должны хостится на этом узле. Например, пусть хоть так:
/opt/zabbix/webmon.txt
Code:
www.websitedown.com www.google.com www.domain.net
Скрипт должен быть совместим с разными OS. Например, это может разрулить макрос уровня УЗЛА - {$OS_TYPE}.
5) Дальше вызываем API: httptest.get
Проверяем что уже добавлено, и оставляем только то что надо добавить/удалить/обновить
6) В соответствии с необходимым действием вызываем API:
httptest.create
httptest.delete
httptest.update
7) Выдаём результат работы скрипта - целое число с количеством изменений.
Как то так.... не исключено, что план не полный.
Comment