2

Руководство по настройке мониторинга Wazzup24 в Zabbix

Для компаний, использующих мессенджеры, как главные каналы коммуникации с клиентами, важна их стабильная работа. Сбой в доступности канала — будь то отключение телефона, нехватка средств на балансе или ошибка авторизации — может привести к потере клиентов и ухудшению качество сервиса.

Настройка интеграции Wazzup24 с Zabbix позволяет организовать мониторинг каналов Wazzup, минимизировать риски и оперативно реагировать на проблемы.

В этом руководстве мы опишем процесс внедрения системы мониторинга с использованием шаблона Zabbix, который обеспечивает автоматическое обнаружение каналов и отслеживание 15 состояний с помощью триггеров состояния каналов.

Преимущества такого подхода:

  • Автоматическое подключение новых каналов без дополнительных настроек.

  • Поддержка WhatsApp, Avito, Telegram, Viber, ВКонтакте, Instagram и других платформ.

  • 14 триггеров для выявления различных сбоев.

  • Возможность настройки интервалов проверки.

1. Подготовка к настройке

Требования для интеграции Wazzup24 с Zabbix:

  • Zabbix Server или Proxy версии 6.0 или выше.

  • API-ключ Wazzup24 с правами доступа к информации о каналах (доступен в личном кабинете Wazzup24).

  • Подключение к API по адресу: https://api.wazzup24.com/v3/channels.

2. Импорт шаблона

  1. Скачайте файл шаблона Wazzup24.yaml

  2. В Zabbix: Configuration → Templates → Import

  3. Выберите файл и подтвердите импорт

3. Настройка макросов

Необходимые параметры:

Руководство по настройке мониторинга Wazzup24 в Zabbix IT, Мессенджер, Бизнес, Гайд, Длиннопост

4. Архитектура шаблона

4.1 Основной элемент данных

  • Название: Get Wazzup Channels Data

  • Тип: HTTP Agent

  • Ключ: wazzup.raw_data

Параметры:yamlCopyURL: https://api.wazzup24.com/v3/channels

Метод: GET

Заголовки: Authorization: Bearer {$API_KEY}

  • Интервал: 10 минут

4.2 Правило автоматического обнаружения (LLD)

  • Название: Wazzup Channels Data

  • Ключ: wazzup.channels.discovery

  • Макросы JSONPath:

Руководство по настройке мониторинга Wazzup24 в Zabbix IT, Мессенджер, Бизнес, Гайд, Длиннопост

5. Элементы данных каналов

5.1 Прототип элемента данных

  • Название: Название: {#NAME} | Тип: {#TRANSPORT} | Номер: {#PLAINID}

  • Ключ: wazzup.channel.state[{#CHANNELID}]

  • Препроцессинг:JSONPath: $[?(@.channelId == '{#CHANNELID}')].state.first()

Объяснение JSONPath:

  1. $ - корень JSON-документа

  2. [?(@.channelId == '...')] - фильтр по уникальному ID канала

  3. .state.first() - извлечение строкового значения состояния

6. Триггеры и состояния каналов

Полный список состояний:

  1. active - канал активен

  2. blocked - заблокирован

  3. foreignphone - QR-код отсканирован чужим аккаунтом

  4. openelsewhere - авторизация в другом аккаунте

  5. init - процесс запуска

  6. onModeration - на модерации

  7. unauthorized - не авторизован

  8. notEnoughMoney - недостаточно средств

  9. phoneUnavailable - нет связи с телефоном

  10. waitForPassword - требуется пароль 2FA

  11. qridle - ожидание сканирования QR-кода

  12. rejected - отклонен

  13. disabled - отключен

  14. Другое - неизвестный статус

expression: 'last(/Wazzup24/wazzup.channel.state[{#CHANNELID}],#1)="foreignphone"'

name: 'Название: {#NAME} | Тип: {#TRANSPORT} | Номер: {#PLAINID} QR отсканирован некорректным аккаунтом'

priority: WARNING

Это элемент типа code его надо вставить как на странице Nginx + OsTicket

7. Подключение шаблона к хосту

  1. Откройте Configuration → Hosts

  2. Выберите целевой хост

  3. В разделе Templates добавьте "Wazzup24"

  4. На старнице Macros вставьте {$API_KEY} с вашим API ключом

  5. Сохраните изменения

8. Верификация работы

  1. Перейдите в Monitoring → Latest Data

  2. Выберите ваш хост

  3. Проверьте наличие элементов:

  4. wazzup.raw_dataАвтообнаруженные каналы

9. Расширенные настройки

9.1 Настройка интервалов

  • Измените Update interval в элементе данных wazzup.raw_data для регулировки частоты опросов

  • Рекомендуемые значения: 5-15 минут

9.2 Обработка ошибок

  • Триггер "Данных нет": Срабатывает при отсутствии данных дольше {$NODATA_DURATION}

  • Неизвестный статус: Триггер "статус не определен" срабатывает, если пришли неизвестные данные.

Заключение

Настройка интеграции Wazzup24 с Zabbix обеспечивает надежный мониторинг каналов Wazzup с использованием автоматического обнаружения и триггеров состояния каналов. Это позволяет оперативно выявлять и устранять сбои, сохраняя стабильность коммуникаций и предотвращая потери бизнеса от пропущенных контактов с клиентами.