При очередной чистке записей, вышло так что забыл запустить программу назад в боевое состояние. Обнаружил только на следующий день, все бы ничего, но оплошность привела к анализу возможностей zabbix на предмет мониторинга состояния процесса программы. Оказалось в этом может помочь proc.num.
Так как у меня язык стоит русский в zabbix, прдполагаю что в 90% это будет у всех, поэтому следуем следующим маршрутом: Узлы сети — Выбираем свой узел сети (тот сервер на котором необходимо производить мониторинг процесса) — Элементы данных
Создаем новый элемент данных
Ключ для нового элемента данных: proc.num[iSpy.exe] В скобках указан требуемый процесс мониторинга, в моем случае программа iSpy.exe. После настройки незабываем нажимать Добавить.
Дальше переходим в раздел триггеров и так же создаем новый триггер
Соответственно, если процесс показал состояние 0 (значит программа закрыта и будет прислано уведомление), при значении 1 программа активна или произведен ее запуск.
В итоге если все правильно повторили за мной, то получите вот такую картинку при случае не запущенного приложения:
В сегодняшней части по работе с сервером мониторинга Zabbix я разберу как мониторить наличие запущенного в системе определенного процесса , к примеру: службы Web-сервера для видеонаблюдения (ПО Intellect, процесс: WebServer.run), 1С сервера и т. д. Как всегда нужно начать с самого малого, а именно я рассмотрю как мониторить наличие запущенного процесса софтфона от Манго — Центр обработки вызовов он же ЦОВ. Имя процесса в диспетчере задач оси Windows 7 Professional SP1 значится, как mpoint.exe → только вот в их при работе программы целых два, но это ничего страшно. Данной заметкой я хочу понять, как работают встроенных средства самого Zabbix, а не задействование внешних обработок прописываемых на агентах. По возможности лучше использовать инструменты из коробки дабы потом проще было вспоминать (если конечно забудете), как и для чего используется.
Создаю новый элемент поведения:
http://IP&DNS — user&pass — Administration — General — Value mapping — Create value map —
- Name: Статус процесса в Диспетчере задач
- Mapping:
- Value: 0 — Mapped to: Процесс не запущен
- Value: 1 — Mapped to: Процесс запущен
и не забываем нажать Save для сохранения внесенных изменений.
Затем создаю в дефолтном шаблоне Template OS Windows новый элемент данных:
http://IP&DNS — user&pass — Configuration — Templates — Template OS Windows — Items — Create Item
- Name: Check Process TSOV
- Type: Zabbix agent
- Key: proc.num[mpoint.exe]
- Type of information: Numeric(unsigned)
- Data type: decimal
- Update interval (in sec): 30
- History storage period (in days): 90
- Trend storage period (in days): 365
- Applications: Processes
- Description: Центр обработки вызовов (ЦОВ)
- Enabled: отмечаю галочкой
По окончании настройки нового элемента данных не забываем нажать Save.
Затем перехожу в заведенный на мониторинг хост и создаю триггер на изменение поведения нацеленного элемента данных в нем:
http://IP&DNS — user&pass — Configuration — Hosts — Group (выбираю свою группу Windows Workstation) — затем перехожу в хост W7X86 — Triggers — Create Trigger
Вкладка: Trigger
- Name: Process TSOV (mpoint.exe) не запущен
- Expression:
- Severity: Average
- Enabled: отмечаю галочкой
И не забываю нажать Save для применения настроек
Затем все также находясь в настройках хоста создаю описание для формирования графика по этому элементу данных:
http://IP&DNS — user&pass — Configuration — Hosts — Group (выбираю свою группу Windows Workstation) — затем перехожу в хост W7X86 — Graphs — Create graph
вкладка: Graph
- Name: Check Status process TSOV
- Y axis MIN value: Fixed = 0
- Y asis MAX value: Fixed = 2
Items — Add — нахожу созданный шагами ранее элемент данных Check Process TSOV, отмечаю его галочкой после нажимаю Select, Save и того получается:
- W7X86: Check Process TSOV (Function: all), Draw style: Line, Y axis side (Left) Colour: C80000
Теперь если на рабочей станции завершить процесс, то график будет следующим:
, т. е. Значение — 2 это когда в системе два запущенных процесса (а только так работает ЦОВ от Манго), а — это когда ни одного процесса не запущено (т. е. Его нет в «Диспетчере задач») и также сработал trigger (триггер) на возникнувшее событие:
http://IP&DNS — user&pass — Monitoring — Dashboard
Если же нужно мониторить не количество процессов в «Диспетчере задач», то в элементе данных нужно добавить значение:
- Show Value: выбираем тот шаблон который создали выше именуемый, как: «Статус процесса в Диспетчере задач»
В настройках триггера хоста шаблон проверки будет таким:
А в настройках графика:
- Name: Check Status process TSOV
- Y axis MIN value: Fixed = 0
- Y asis MAX value: Fixed = 2
- Items: W7X86: Check Process TSOV (Function: all)
На заметку: лучше создать элемент данных не в дефолтном шаблоне, с создать свой ориентированный на определенную группу хостов на которых общие составляющие и триггеры с использование переменных окружения.
Вот пример для процесса WebServer.run ответственного за возможность через браузер подключиться к сервере видеонаблюдения с целью просмотра камер согласно должностным обязанностям за своими отделами:
Вот что мне и требовалось сделать. Для чего я именно на рабочей станции мониторю как каким-то процессом, дело в том, что у нас в компании имеется CallCenter который пользуется данным ПО для обработки звонков клиентов с последующим переводом на соответствующие отделы. А порой уже довольно часто у Манго наблюдаются различные проблемы при работе, доступ в интернет с рабочих станций на сервера Манго полный, но использование ЦОВ как софтфона это сущий геморрой по возникающим ошибкам для меня как системного администратора — я ведь ничего не могу сделать, сервис то ведь в облаке (ну где-то там и палец вверх). Обращения к поддержке результата решения не дают, а только в ответ слышу это будет исправлено в следующем релизе, давайте заведем заявку и все по такому же принципу. А так я буду уже знать что что-то уже случилось. На этом я прощаюсь, с уважением автор блога — ekzorchik.
Используйте прокси ((заблокировано роскомнадзором, используйте vpn или proxy)) при использовании Telegram клиента:
Поблагодари автора и новые статьи
будут появляться чаще 🙂
Карта МКБ: 4432-7300-2472-8059
Yandex-деньги: 41001520055047
Большое спасибо тем кто благодарит автора за практические заметки небольшими пожертвованиями. С уважением, Олло Александр aka ekzorchik.
Переходим в web-интерфейс Zabbix Server
Создаем новый элемент данных:
Настройки — Узлы сети — выбираем нужный узел — Элементы данных — Создать элемент данных
Создаем новый триггер
Настройки — Узлы сети — выбираем нужный узел — Триггеры — Создать триггер
Если всё правильно сделали, то закройте блокнот, и увидите уведомление Zabbix